首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

DBGrid1DrawColumnCell是个什么事件解决方案

2012-03-17 
DBGrid1DrawColumnCell是个什么事件DBGrid1DrawColumnCell是什么事件我仿别人在DBGrid写了以下代码来改变

DBGrid1DrawColumnCell是个什么事件
DBGrid1DrawColumnCell是什么事件

我仿别人在DBGrid写了以下代码来改变颜色,怎么不起作用.

procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
  Field: TField; State: TGridDrawState);
begin
if adoquery1.FieldByName('name').AsString ='张三峰' then
 begin
  dbgrid1.Canvas.Brush.Color:=clYellow;
  DBGrid1.DefaultDrawDataCell(Rect, Field, State);
 end;
end;

[解决办法]

探讨
应该可以
除非你的name字段,并没有"张三峰",否则name等于"张三峰"的这整行都变色
若Field.AsString ='张三峰',那么只有等于"张三峰"的这一单元格变色

[解决办法]
DBGrid1DrawDataCell就是DBGrid表格重绘事件
画布填充背景颜色时,可能会将单元格的内容覆盖掉
最好字体颜色跟画布颜色有明显的区别

热点排行