如何在TreeView的Item中添加一个Label

Qun~~ 2009-04-24 09:31:29
如题,功能要像Foxmail那样收件箱后面可以用别的颜色显示一个未读的数量,或者有什么别的方法可以实现相同的效果
...全文
203 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ProgramSir 2009-04-24
  • 打赏
  • 举报
回复
自己结一个吧.
taxi 2009-04-24
  • 打赏
  • 举报
回复
要自绘节点文字。
ronal212121 2009-04-24
  • 打赏
  • 举报
回复
如下代码供你参考:
procedure TEditForm.TreeView1CustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if Node.Selected then
begin
TreeView1.Canvas.Font.Color:=clRed;
TreeView1.Canvas.Font.Size:=12;
TreeView1.Canvas.Font.Name:='隶书';
end
else
begin
TreeView1.Canvas.Font.Color:=clblack;
TreeView1.Canvas.Font.Size:=9;
TreeView1.Canvas.Font.Name:='宋体';
end;
end;
//还可以设置未选中的 TreeView1.Canvas.Font 的其他属性,来达到显示不同的效果。
bdmh 2009-04-24
  • 打赏
  • 举报
回复
用Node.Data记录是否被看过的值比如,1:看过,0:未看过
ronal212121 2009-04-24
  • 打赏
  • 举报
回复
整个节点都改变颜色不可以吗
kye_jufei 2009-04-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ronal212121 的回复:]
如下代码供你参考:
procedure TEditForm.TreeView1CustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
if Node.Selected then
begin
TreeView1.Canvas.Font.Color:=clRed;
TreeView1.Canvas.Font.Size:=12;
TreeView1.Canvas.Font.Name:='隶书';

[/Quote]
自绘节点文字

5,386

社区成员

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

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