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

Вниз

TreeView + Checkbox   Найти похожие ветки 

 
QAZ   (2009-05-18 16:34) [0]

Вобщем дерево может показывать чекбоксы
1) как сделать чтоб при выделении ветки выделялись все вложеные,
а при выделении вложеных частично чекался родитель-вобщем как
в "нормальных" деревьях в инсталяторах и файломанагерах
2) и как собственно получить список выделеных "файлов" с полными
путями в дереве
воот...
я понимаю что тут рекурсии и все такое ,только
дерево так устроено что мой мозг отказывается это понимать :(

может есть у кого куски готового кода или ссылки на них


 
Дмитрий К ©   (2009-05-19 19:02) [1]

1) http://dmiko.mail333.su/other/tv.7z
2) У TreeView есть метод TVItemPath, который как раз возвращает полный путь в дереве. Нужно пройтись по всем узлам дерева и те, у которых нет детей и стоит флажок, добавить в список.


 
QAZ   (2009-05-19 19:32) [2]

о да ништяк
ты даже мой прошлый вопрос применил :)
а частичная чеканутость возможна только с самопальными картинками ?

пройтись надо рекурсивно ?
можеш хотябы скелет процедуры накинуть :( можно даже на исконно русском :)


 
Дмитрий К ©   (2009-05-19 20:13) [3]


> а частичная чеканутость возможна только с самопальными картинками
> ?

да, насколько мне известно.

procedure GetChecked(ParentItem: Cardinal; var SL: PStrList);
var Item: Cardinal;
begin
 Item := TV.TVItemChild[ParentItem];
 while Item <> 0 do
 begin
   if TV.TVItemStateImg[Item] <> tvisUnсhecked then
   begin
     if TV.TVItemHasChildren[Item] then
       GetChecked(Item, SL)
     else
       SL.Add(TV.TVItemPath(Item, "\"));
   end;
   Item := TV.TVItemNext[Item];
 end;
end;


 
QAZ   (2009-05-19 21:28) [4]

спасибо :)
типерь ничто не остановит меня от захвата мира


 
MTsv DN   (2009-05-19 21:35) [5]

[offtop]Все, абздец. QAZ теперь весь Мир зачеканными деревьями засадит.
[/offtop]


 
QAZ   (2009-06-10 12:05) [6]

возник вопрос
как кашерно объединить дерево с листвиевом
чтоб в дереве были "папки" а в листе "файлы"
("файл" имееца в виду  последний блок в строке типа папка\папка\папка\файл, кароче готовый список строк)

тобиш дерево создаем из папок к ним чепляем указатель
на список файлов в даной папке, и кагда выделяеш папку
список файлов листвиевица

и чтоб вся эта прелесть чекалась да частично перечекивалась ?



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

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

Наверх




Память: 0.45 MB
Время: 0.062 c
15-1348259402
Юрий
2012-09-22 00:30
2013.03.22
С днем рождения ! 22 сентября 2012 суббота


15-1352665803
Юрий
2012-11-12 00:30
2013.03.22
С днем рождения ! 12 ноября 2012 понедельник


15-1344860028
IGray
2012-08-13 16:13
2013.03.22
Автоматизация обновления Indy10 для Delphi 2009


15-1332013809
V_a_d
2012-03-17 23:50
2013.03.22
PopupMenu


15-1350304912
8903765 0706
2012-10-15 16:41
2013.03.22
Внимание! Ищут машину, которая сбила 15.09 ребенка на стоянке





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский