• 主页
  • 招聘
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API

高手请进···关于Treelist颜色显示问题····

chenyansong 2006-10-14 09:17:53
Treelist颜色显示问题:现Treelist数据如下:
ID Name sex
1, a aa
2, b bb
3,c cc
我想把Treelist中ID=3 的记录用红色表示,代码如下
procedure TFrmZwCollSurv.zwcxTreeList1CustomDrawCell(Sender: TObject;
ACanvas: TcxCanvas; AViewInfo: TcxTreeListEditCellViewInfo;
var ADone: Boolean);
begin
inherited;
zwcxTreeList1.Canvas.Font.Color := clRed;
end;
但是结果却是全部都成红色了,改了好长时间没有改好,请大虾们帮忙···多谢多谢···
...全文
277 点赞 收藏 10
写回复
10 条回复
winxkm 2006年12月31日
呵呵,楼上正确, 我真是笨, 何必管他什么控件呢, 看事件中的参数就知道用Acanvas来设置背景和字体颜色了 呵呵!
回复 点赞
cxj1976 2006年12月31日
procedure TFrmZwCollSurv.zwcxTreeList1CustomDrawCell(Sender: TObject;
ACanvas: TcxCanvas; AViewInfo: TcxTreeListEditCellViewInfo;
var ADone: Boolean);
begin
inherited;
if AviewInfo.node.value[0] = 3 then
ACanvas.Brush.Color := clred;
end;
回复 点赞
winxkm 2006年12月31日
那么请告知你们的控件是否是第三方控件
回复 点赞
qiu_xiaolin 2006年12月31日
这样子不可以……
回复 点赞
winxkm 2006年12月31日
不过更具楼主说的事件Drawcell 这应该是Grid的子类
你应该在Drawcell事件里写这样的代码:
if zwcxTreeList1.Cells[0,ARow]='3' then
begin
zwcxTreeList1.Canvas.Font.Color := clRed;
zwcxTreeList1.canvas.TextRect(Rect,Rect.left,Rect.top,zwcxTreeList1.cells[Acol,Arow]);
end;
回复 点赞
winxkm 2006年12月31日
楼主说一下这是哪里的控件,没用过,
treeview也没有这样的事件
回复 点赞
qiu_xiaolin 2006年12月31日
我也想知道这个怎么解决,晕,现在也被这个问题困扰
回复 点赞
chenyansong 2006年10月14日
楼上的说来看看,把代码贴出来啊,学习一下哈···
回复 点赞
wudi_1982 2006年10月14日
知道treeView,知道listView,但不知道你这个Treelist是那个组件。
回复 点赞
chenyansong 2006年10月14日
沙发我自己坐···
回复 点赞
发动态
发帖子
Delphi
创建于2007-08-02

1469

社区成员

26.2w+

社区内容

Delphi 开发及应用
社区公告
暂无公告