Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.08.21;
Скачать: [xml.tar.bz2];

Вниз

значки в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.012 c
14-68514
Magic
2003-08-06 12:37
2003.08.21
Как программировать под сеть


1-68312
cult
2003-08-06 14:09
2003.08.21
Тестирование COM-класса


1-68269
Camus
2003-08-07 10:54
2003.08.21
Developer Express Quantum Grid 3


4-68587
Alien
2003-06-18 17:02
2003.08.21
Как определить по Handle окно было взято или процесс?


4-68586
dimonf
2003-06-20 11:49
2003.08.21
Каким образом правильно синхронизировать функцию потока?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский