如某项为空时显示红色!
解决方案 »
- 为什么我的delphi7里找不到clientsocket组件?
- 初级midas 问题 webconnection连接数据库
- 控件啊控件啊~~~~~~~~
- ActionMainMenuBar与MDI窗口冲突的解决方法
- delphi中进行串口通讯有一些什么控件,如何使用
- 在Delphi中有没有像VB里面On Error Goto ErrTag 类型的语句
- xe2的一些问题,有人碰到没?
- 如何实现金山毒霸2002那样的主界面(指TFORM)??我是用D6开发的
- 急需解决!!!paradox表在共享时无法备份?
- 红旗Linux哪儿有下载啊?
- 在XP下安装的Delphi7,不能运行编译请各位高手指教
- 一个ADO创建的问题?
这个例子,你参考一下:
var
clBack : TColor;
begin
clBack := (Sender As TDbGrid).Canvas.Brush.Color;
With Sender As TDbGrid do
begin
if (gdSelected) in State then
begin
(Sender As TDbGrid).Canvas.Brush.Color := clblue;
end
else
begin
Canvas.Brush.Color := clBack;
Canvas.Font.Color := clblack;
end; if (Sender As TDbGrid).DataSource.DataSet.FieldByName('jwxh').AsInteger = 1 then //封锁揭示
begin
Canvas.Brush.Color := clWhite;
Canvas.Font.Color := clBlue;
end
else
if (Sender As TDbGrid).DataSource.DataSet.FieldByName('jwxh').AsInteger = 2 then //特殊揭示
begin
Canvas.Brush.Color := clWhite;
Canvas.Font.Color := clGreen;
end
else
if (Sender As TDbGrid).DataSource.DataSet.FieldByName('jwxh').AsInteger = 3 then //车站限速
begin
Canvas.Brush.Color := clWhite;
Canvas.Font.Color := clTeal;
end
else
if (Sender As TDbGrid).DataSource.DataSet.FieldByName('jwxh').AsInteger = 4 then //侧线限速
begin
Canvas.Brush.Color := clWhite;
Canvas.Font.Color := clMoneyGreen;
end
else
if (Sender As TDbGrid).DataSource.DataSet.FieldByName('jwxh').AsInteger = 5 then //信号停用
begin
Canvas.Brush.Color := clWhite;
Canvas.Font.Color := clFuchsia;
end
else
if (Sender As TDbGrid).DataSource.DataSet.FieldByName('jwxh').AsInteger = 6 then //绿色凭证
begin
Canvas.Brush.Color := clWhite;
Canvas.Font.Color := clLime;
end
else
if (Sender As TDbGrid).DataSource.DataSet.FieldByName('jwxh').AsInteger = 7 then //特定引导
begin
Canvas.Brush.Color := clWhite;
Canvas.Font.Color := clAqua;
end; end;
(Sender As TDbGrid).DefaultDrawColumnCell(Rect, DataCol, Column, State);