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

Вниз

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 вся ветка

Форум: "KOL";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.081 c
15-1348811854
MonoLife
2012-09-28 09:57
2013.03.22
Подскажите по проектировке таблиц БД.


2-1340259923
vasa777
2012-06-21 10:25
2013.03.22
компилятор


2-1329811084
leklerk
2012-02-21 11:58
2013.03.22
Изменение данных в БД через DBGrid


15-1336935964
Jimmy
2012-05-13 23:06
2013.03.22
Маджонг


15-1353837763
dummy_user
2012-11-25 14:02
2013.03.22
Вставка текста из .pas в .txt.





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