cxGrid怎样才能根据字段值行显示不同颜色了?

xugang96 2007-04-19 05:37:28
cxGrid怎样才能根据字段值行显示不同颜色了?
现在我可以根据已有列显示不同颜色,可我的列是动态产生的,所以名字不能确定,也有可能对应字段不会在COLUMN列中出现,特别是状态字段,该怎么设置了:
procedure TForm1.cxGrid1DBTableView1CustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var str:string;
begin
str:=trim(VarAsType(AViewInfo.GridRecord.DisplayTexts[ColumnSex.Index], varString));
if str='男' then
begin
ACanvas.Canvas.Brush.Color :=clred;
ACanvas.canvas.Font.Color := clblack;
end
else if str='女' then
begin
ACanvas.Canvas.Brush.Color :=clgreen;
ACanvas.canvas.Font.Color := clblack;
end;
if AViewInfo.Selected then
begin
ACanvas.Canvas.Font.Color := clwhite;
ACanvas.Canvas.Brush.Color :=clNavy ;
end;

我想改成和DBGRIDEH那样可以根据某个查询字段来改变
...全文
584 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
szqhebei 2010-03-18
  • 打赏
  • 举报
回复
马小姐,我想知道你是怎么解决的啊,我也有这个问题
xugang96 2007-04-19
  • 打赏
  • 举报
回复
可能大家都没有理解偶的意思,自己解决了,谢谢大家
w3k 2007-04-19
  • 打赏
  • 举报
回复
good
cncharles 2007-04-19
  • 打赏
  • 举报
回复
看看这个
http://hi.baidu.com/cncharles/blog/item/9daab4ec6d0fe43d2797917f.html
xugang96 2007-04-19
  • 打赏
  • 举报
回复
procedure TForm1.cxGrid1DBTableView1CustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var str:string;
begin
str:=trim(qrybrowse.fieldbyname('XX').asString);
if str='男' then
begin
ACanvas.Canvas.Brush.Color :=clred;
ACanvas.canvas.Font.Color := clblack;
end
else if str='女' then
begin
ACanvas.Canvas.Brush.Color :=clgreen;
ACanvas.canvas.Font.Color := clblack;
end;
if AViewInfo.Selected then
begin
ACanvas.Canvas.Font.Color := clwhite;
ACanvas.Canvas.Brush.Color :=clNavy ;
end;
这样就不行....

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧