Форум: "KOL";
Текущий архив: 2009.02.22;
Скачать: [xml.tar.bz2];
ВнизРабота с TreeView Найти похожие ветки
← →
Delphuk © (2007-07-04 20:11) [0]Здравствуйте. В моем приложении есть TreeView, мне нужно его использовать как дерево чекбоксов для этого я поставил в опциях соотв. пункт. Пожалуйста подскажите, как сделать следующее:
- при установке галки "родителю" автоматически ставить галочки "детям"
- пробежаться по всему дереву и узнать, какие узлы отмечены галочкой
- добавить картинку в некоторые узлы (не во все)
- сделать отдельные хинты для каждого узла
В FAQ"е и на форуме я ничего подобного не нашёл, а в книге по KOL, на эту тему мало информации.
← →
=BuckLr= (2007-07-04 20:48) [1]
> ри установке галки "родителю" автоматически ставить галочки
> "детям"
Перебором, по-моему, больше никак. Может, кто ещё способ знает
> какие узлы отмечены галочкой
TVItemSelected
> добавить картинку в некоторые узлы
TVItemSelImg\TVItemStateImg
> сделать отдельные хинты для каждого узла
Можно показывать вручную. Тут придётся плясать от TVItemAtPos. Посмотри demotreeviewdrag.7z на сайте.
← →
vpbar (2007-07-04 21:30) [2]Точно сказал =BuckLr=. Больше и сказать нечего если только код дать.
← →
Delphuk © (2007-07-04 23:42) [3]Посмотрел демку, там только есть добавление и удаление, а того что меня интересует там нет. Как не пытался, ничего не получается. Как я понял, картинку произвольному узлу вообще нельзя поставить :( С определением состояния галочек тоже проблема. Как не стыдно, но думаю будет лучше показать код :(
← →
=BuckLr= (2007-07-05 09:20) [4]
> там только есть добавление и удаление
Там есть пример использования TVItemAtPos. Ну как домой приду, может, напишу примерчик
← →
Unknown Mystic © (2007-07-05 10:39) [5]А галочки через TVItemSelected и не ловятся.
Только перебор с проверкой TVItemStateImg на 1 или 2 - не помню точно.
И картинку можно поставить отдельному узлу. Тут =BuckLr= совершенно прав.
← →
=BuckLr= (2007-07-05 13:43) [6]
> А галочки через TVItemSelected и не ловятся
Кстати!
← →
Delphuk © (2007-07-05 22:31) [7]=BuckLr=, так что на счёт демки. Хотелось бы посмотреть как пробежать по всему дереву и определить какие узлы отмечены галочками + как можно отметить галочкой произвользый узел?
← →
vpbar (2007-07-06 09:53) [8]Устанавливает галочки (которые картинки узлов) всех потомков узла Parent в состояние (которое индекс картинке в списке ImageList) selst
function TFF1.SetSelChild(Parent, selst: cardinal): DWORD;
// c- ID_TREE_NODE ss-TVItemStateImg
var
cur: integer;
begin
result := 0;
cur := DirTreeView1.TVItemChild[Parent];
if cur = 0 then exit;
repeat
DirTreeView1.TVItemStateImg[cur] := selst;
SetSelChild(cur, selst);
cur := DirTreeView1.TVItemNext[cur];
until cur = 0;
end;
Соответственно пробежатся аналогично, а проверка, что узел выделен == проверке что у узла определенная иконка (DirTreeView1.TVItemStateImg[cur] = selst)
ЗЫ
Читайте "Книга о KOL"
← →
Delphuk © (2007-07-06 22:39) [9]Спасибо. Книгу и FAQ я читаю :)
← →
Robt © (2007-12-13 11:07) [10]как корректно через TVExpanding
добавлять узлы в раскрывающийся узел ?
и чтоб это срабатывало тока на не раскрытых узлах
это что то в стиле коловского dirtreeview
но код перенесенный оттуда у меня не
работает при включенной оптимизации !?
точней внутренне работает но визуально узлы не раскрываются !?
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2009.02.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c