Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TreeView и ImageList [D6, Win95/98, WinXP]


Alex870 ©   (2004-08-06 22:47:00) 

Уважаемые знатоки VCL!
Проблема с TTreeView. Я хочу, чтобы его TTreeNode имели разные иконки. Для этого использую TImageList и пишу так:

procedure TForm1.Button1Click(Sender: TObject);
begin
TreeView1.Images := ImageList1;
TreeView1.Items.Add(nil,'Node1');
TreeView1.Items.Item[0].ImageIndex := 0;
TreeView1.Items.Add(nil,'Node2');
TreeView1.Items.Item[1].ImageIndex := 1;
TreeView1.Items.Add(nil,'Node3');
TreeView1.Items.Item[2].ImageIndex := 2;
end;

однако после первого щелчка мышью по любому из TNode его иконка становится такой, какая иконка стоит под нулевым индексом в ImageList1. Подскажите пожалуйста как с этим бороться. Зарание большое спасибо!


афвуд   (2004-08-07 13:11:00) [1]

SelectedIndex! :)

Вот правильный код(хотя я его не проверял):

procedure TForm1.Button1Click(Sender: TObject);
begin
TreeView1.Images := ImageList1;
TreeView1.Items.Add(nil,'Node1');
TreeView1.Items.Item[0].ImageIndex := 0;
TreeView1.Items.Item[0].SelectedIndex := 0;
TreeView1.Items.Add(nil,'Node2');
TreeView1.Items.Item[1].ImageIndex := 1;
TreeView1.Items.Item[1].SelectedIndex := 1;
TreeView1.Items.Add(nil,'Node3');
TreeView1.Items.Item[2].ImageIndex := 2;
TreeView1.Items.Item[2].SelectedIndex := 2;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо