按条件控制dbgrid每一行的颜色(3种以上的颜色)
2006-09-16 15:25
246 查看
根据不同的字段值,在DBGrid1表格中不同行间显示红,蓝,绿三种颜色,可以在DBGrid1的OnDrawDataCell事件中加入这段代码:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if Query1.FieldByName('Red').AsString = 'A' then //这是判断条件,显示红色
DBGrid1.Canvas.Font.Color := clRed;
if Query1.FieldByName('Blue').AsString = 'B' then //这是判断条件,显示蓝色
DBGrid1.Canvas.Font.Color := clBlue;
if Query1.FieldByName('Green').AsString = 'C' then //这是判断条件,显示绿色
DBGrid1.Canvas.Font.Color := clGreen;
......
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State); //最重要的是这一行代码[/b]
end;
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if Query1.FieldByName('Red').AsString = 'A' then //这是判断条件,显示红色
DBGrid1.Canvas.Font.Color := clRed;
if Query1.FieldByName('Blue').AsString = 'B' then //这是判断条件,显示蓝色
DBGrid1.Canvas.Font.Color := clBlue;
if Query1.FieldByName('Green').AsString = 'C' then //这是判断条件,显示绿色
DBGrid1.Canvas.Font.Color := clGreen;
......
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State); //最重要的是这一行代码[/b]
end;
相关文章推荐
- 如何让DBGrid中每一行颜色按照用户自己的意愿控制
- CSS控制图片和文字在同一行显示且对齐的3种方法
- CSS控制图片和文字在同一行显示且对齐的3种方法
- 在C#中控制ListBox某一行的字体颜色
- 3种用CSS控制border的颜色实现向下的小箭头的方法
- 绘制n边形:用两个以上的控件来控制矩形的颜色、大小、位置及空实心(程序代写)
- 根据条件,DBGrid不同行显示不同的颜色
- cxGrid通过条件控制单元格颜色和是否可设
- 在C#中控制ListBox某一行的字体颜色
- CSS控制图片和文字在同一行显示且对齐的3种方法
- CSS控制图片和文字在同一行显示且对齐的3种方法
- 在DBGRID的指定单元格中,自由控制画上下方向箭头,指定字体颜色
- 在C#中控制ListBox某一行的字体颜色
- Excel中,通过 「条件格式」 实现, 下拉菜单选择某个值时,这一行的颜色改变。
- QT 设置表中某一行的颜色遇到问题
- Elasticsearch 2.0以上版本根据条件批量删除Java如何实现
- python013 Python3 条件控制
- 根据条件控制Grid列能否编辑
- vb.net 教程 2-1 流程控制:条件判断语句
- CocosCreator项目学习系列<二>关于Button(添加事件)输入控制交互条件的触发_实现虚拟按钮控制_JavaScript