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

  • 主题发起人 主题发起人 wangzequn
  • 开始时间 开始时间
W

wangzequn

Unregistered / Unconfirmed
GUEST, unregistred user!
如题,主要是Label的Parent要怎么弄功能就是我要像Foxmail那样收件箱后面可以用别的颜色显示一个未读的数量
 
不一定要创建一个实际的Label,在OnCustomDrawItem画上去就行了
 
TreeView1.Items.AddObject()可以Label,但仅仅只是建立node和label的关联关系而已。如果当前Node功能不足,你需要额外添加功能,可以写一个从TTreeNode继承的类,实现你的功能,并在CreateNodeClass事件中,将类名赋值给NodeClass
 
发错了。。。[:D]
 
还是说说你的功能吧, 我觉得有其它方法可以代替~
 
功能就是我要像Foxmail那样收件箱后面可以用别的颜色显示一个未读的数量
 
用这个控件实现那个效果,不大好吧,你还需要考虑节点的收缩问题和TreeView的滚动条的滚动问题。或者你普通节点显示的时候不用图标,需要特别标注的节点,加图标显示,以示区分。
 
那还有什么别的方法实现同样的效果呢
 
这分我要拉~~uses commctrlvar TVItem: TTVItem;begin TVItem.mask := TVIF_STATE or TVIF_HANDLE; TVItem.hItem := aNode.ItemId; TreeView_SetTextColor(aNode.Handle, //你要的颜色);end;
 
其实1楼的已经说清楚了,OnCustomDrawItem自己去画就可以了
 
后退
顶部