怎么改变treeview树形控件的某个节点颜色?请各路大侠帮忙?在线等侯....

解决方案 »

  1.   

    整体修改容易,单个修改比较麻烦
    在CustomDraw中判断条件,如果是符合你条件的那个节点,改变话刷颜色
    若不符合条件则调用默认话刷
      

  2.   

     if combobox1.lines.text='行政机关' then 
     treeview1.selected.text.canvas.font.color:=clred
     else if combobox1.lines.text='事业机构' then 
     treeview1.selected.text.canvas.font.color:=clgreen;
    我想实现这样的功能,应该怎么写呢、这一块没有接触过,还忘高手再次指点一次,感激不尽...
     
      

  3.   

       if combobox1.text='行政机关'   then
        begin
          if Node.Selected then
            Sender.Canvas.Brush.color:=clred
          else
            Sender.Canvas.Brush.color:=clwindow
        end
       else if combobox1.text='事业机构' then
       begin
         if Node.Selected then
           Sender.Canvas.Brush.Color:=clgreen
         else
           Sender.Canvas.Brush.color:=clwindow
       end;
      

  4.   

    类似这样:
    procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
      Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
    begin
        if Node.Text = '行政机关' then
          Sender.Canvas.Font.Color := clRed
        else if Node.Text = '事业机构' then
          Sender.Canvas.Font.Color := clGreen;
    end;