如何设置TreeNode的背景色?(20分)

  • 主题发起人 主题发起人 阿权
  • 开始时间 开始时间

阿权

Unregistered / Unconfirmed
GUEST, unregistred user!
我可以改变了TreeView的背景色,却改变不了其中的TreeNode的背景色,怎么办?
 
我猜到了这故事的开头,却猜不到这结局 *_^
 
本人愚笨,猜不懂你的意思。
能否解决这个问题请说清楚一点。谢谢。
 
对不起,我只是开个玩笑,我看见你那句话的
结构,禁不住想起<<大话西游>>中的台词。

这个问题我不清楚,等其它大虾来回答吧 :)
 
可以响应TTreeview的OnCustomDraw事件和OnCustomDrawItem事件,前一个实现
TreeView本身的定制绘制;后一个实现Treeview中各个Item的定制绘制。可以参看
下面这个小例子。
procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
var Rect:TRect;
begin
Rect:=Node.DisplayRect(true);
Sender.Canvas.Brush.Color:=clRed;
Sender.Canvas.Pen.Color:=clGreen;
Sender.Canvas.TextRect(Rect,0,0,Node.Text);
DefaultDraw:=true;
end;
<p>
如果给我一个期限,我希望是<big><big><blink>一万年</blink></big></big>
</p>
 
谢谢tqz。TreeView好象没有这两个事件?
 
我用的是Delphi 4 ,低于此版本可能就没有这两个事件了。
还可以使用增强的TreeView控件,比如TTreeNT等,yysun的控件库肯定有。
 
接受答案了.
 
后退
顶部