среда, 10 сентября 2014 г.

Раскраска элементов TreeView

Легко: обрабатывай OnCustomDrawItem, в котором и назначай цвет:
Код Delphi
1
2
3
4
5
6
7
8
9
10
procedure TForm1.TreeView1CustomDrawItem(Sender: TCustomTreeView;
  Node: TTreeNode; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
   case Integer(Node.Data) of
      1 : Sender.Canvas.Font.Color := clRed;
      2 : Sender.Canvas.Font.Color := clBlue;
      else
         Sender.Canvas.Font.Color:= clBlack;
   end;
end;
, и добавляй свои элементы в дерево. Цвет будет зависеть от значения поля Data:
Код Delphi
1
2
3
4
5
6
7
8
9
10
11
procedure TForm1.Button1Click(Sender: TObject);
begin
   with TreeView1.Items.AddChild(nil, 'First red') do
      Data := Pointer(1);
   with TreeView1.Items.AddChild(nil, 'Second red') do
      Data := Pointer(1);
   with TreeView1.Items.AddChild(nil, 'First blue') do
      Data := Pointer(2);
   with TreeView1.Items.AddChild(nil, 'Black') do
      Data := Pointer(0);
end;
http://www.cyberforum.ru/delphi-beginners/thread728793.html

Комментариев нет:

Отправить комментарий