如何控制DBGrid中单元格的颜色?
解决方案 »
- 关于客户端登录下载内容太多的解决方案
- 使用控件删除EXCEL某一行,如何做?
- 用友华表和水晶报表那一个容易使用?
- 关于程序最小化的郁闷问题(估计没人遇到过), 问题一句话说不完, 进来看看吧...谢谢
- 求rave的列和方法,我用CalcText组件不知道为什么总是为0,谢谢了
- 请问,那些工具栏上speedbutton上的小图标 ,都位于哪些文件夹下?
- 我的系统该为多层结构时,能有什么好处?
- **三层结构让我很伤心,这可能是MIDAS的大臭虫吧**
- Delphi里如何将QRChart绘制的图片保存到硬盘
- 怎样截获windows的所有键盘事件(不叫其它应用程序相应)
- 如果你在软件快要设计完成时发现系统设计中存在一个致命的错误。。。
- 请问如何改变Listbox中特定某一项的字体颜色???急!!!
Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var
oldcolor:tcolor;
oldpm:tpenmode;begin
if DM.ProjectTEAM_LEADER.Value =
DM.Emp_ProjEMP_NO.Value then {设定变色的行的条件}
MemberGrid.Canvas.Font.Style := [fsBold];
MemberGrid.DefaultDrawColumnCell
(Rect, DataCol, Column, State);
{上面是演示程序的原内容,以下是增加部分}
if DM.ProjectTEAM_LEADER.Value =
DM.Emp_ProjEMP_NO.Value then {设定变色的行的条件}
begin
oldpm:= MemberGrid.Canvas.pen.mode;
oldcolor:= MemberGrid.Canvas.Brush.color;
MemberGrid.Canvas.Brush.color:=clyellow;
MemberGrid.Canvas.pen.mode:=pmmask;
MemberGrid.DefaultDrawColumnCell
(Rect, DataCol, Column, State);
MemberGrid.Canvas.Brush.color:=oldcolor;
MemberGrid.Canvas.pen.mode:=oldpm;
end;
end;
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (Column.Field.FieldName = 'NAME') and (Column.Field.AsString = 'aaa') then
DBGrid1.Canvas.Font.Color := clRed;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;//