Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.21;
Скачать: CL | DM;

Вниз

значки в treeview   Найти похожие ветки 

 
Miralex ©   (2003-08-07 10:05) [0]

У меня такая проблема:
Имею я дерево treeview в котором отображаються папки и файлы!
для папок хочу поставить одни значки а для файлов другие!
Сделал так:

procedure TForm1.TreeView1GetImageIndex(Sender: TObject; Node: TTreeNode);
begin
with Node do
begin
if HasChildren then
begin
if Expanded then ImageIndex := 2
else ImageIndex:=3;
end
else ImageIndex:=1;
end;
end;

Но тут получилось одна вешь - если папка пустая - то она отображаеться как файл!..
Как мне с етим побороться?
Помогите пожалуйста!
Заранее спасибо!


 
MBo ©   (2003-08-07 10:10) [1]

не по HasChildren различай, а введи признак папки, и храни его, например, в TTreeNode.Data


 
Miralex ©   (2003-08-07 10:11) [2]

как?
обьясни подробнее пожалуйста!...я новичек!


 
MBo ©   (2003-08-07 10:13) [3]

F1


 
Miralex ©   (2003-08-07 10:19) [4]

скинь мне пример пожалуйста!,..


 
Guerrillero ©   (2003-08-07 10:41) [5]

Добавляем:
TreeView1.Items.AddObject(nil,"Folder",Pointer(1));
TreeView1.Items.AddObject(nil,"File",Pointer(2));
Различаем:
procedure TForm1.TreeView1GetImageIndex(Sender: TObject; Node: TTreeNode);
begin
Node.ImageIndex := Integer(Node.Data) - 1;
end;


 
Miralex ©   (2003-08-07 10:59) [6]

Pointer(1) - ето метка на что?
как с ней еще можно работать и где она храниться?


 
Guerrillero ©   (2003-08-07 11:03) [7]

хранится она в Node.Data
это и будет признак папка/файл, т.е.
1 - папка
2 - файл


 
Miralex ©   (2003-08-07 13:18) [8]

а как мне поставить или наоборот убрать значок выделеной папки (файла)?
if Node.selected then ............
или как?



Страницы: 1 вся ветка

Текущий архив: 2003.08.21;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
4-68589
demonyator
2003-06-15 02:15
2003.08.21
Как заставить все окна изменить свои размеры.....


1-68296
starik30
2003-08-06 16:55
2003.08.21
Как динамически скрывать/показывать формы на TaskBar


14-68514
Magic
2003-08-06 12:37
2003.08.21
Как программировать под сеть


7-68562
Школьник
2003-05-20 14:04
2003.08.21
Не могу выделить более 1.7Gb виртуальной памяти.


3-68213
Джо
2003-07-28 11:01
2003.08.21
Клиппер Clipper