Помощь - Поиск - Пользователи - Календарь
Полная версия: Treeview
Форум «Всё о Паскале» > Delphi, Assembler и другие языки. > Delphi
Dead.MorozZ
Помогите кто знает, как пользоваться "Деоевом". Мне нужно по клику на один из Item'ов, чтоб происходило событие dry.gif
volvo
Цитата
Мне нужно по клику на один из Item'ов, чтоб происходило событие

Ну, так оно происходит (OnClick обрабатывай)... Что именно ты хочешь получить? Путь к элементу на котором был Click?
Dead.MorozZ
Именно! Мне надо определить, что надо обрабатывать ОнКлик.
Желательно название процедуры
klem4
Ну так если у тебя для разных объектов должны выполняться разные действия при OnClick, так и опиши отдельно что надо делать при событии OnClick для каждого объекта, в чем проблема-то ?
Dead.MorozZ
Действия я м сам могу описать. Мне надо название процедуры, которая вызывается при нажатии на одно из ответвлений дерева dry.gif dry.gif dry.gif
volvo
Всегда TTreeView.OnClick вызывается... А чтобы определить, где именно было нажатие используй TreeView1.Selected
Dead.MorozZ
To: volvo
Да нет, не то! Ты меня не так понял! Мне надо событие обрабатывать, не при клике по всему дереву, а только при клике по одной ветке unsure.gif
М-да врят-ли стало понятней unsure.gif unsure.gif
volvo
Ok... Тебе набросать пример, который будет реагировать ТОЛЬКО на клик по веткам первого уровня? Или опять не то?
Dead.MorozZ
Да именно!! Только почему обязательно первого уровня??
Ну вообщем кидай пример, а я разобраться попытаюсь rolleyes.gif rolleyes.gif
volvo
Ну, попытайся wink.gif
procedure TForm1.TreeView1Click(Sender: TObject);
begin
if treeview1.Selected.Level = 1 then begin
showmessage('that is level #1');
label1.Caption := treeview1.selected.Text
end;
end;

При клике на Root дерева никакой реакции, если кликнешь на первый уровень - будет сообщение...
Dead.MorozZ
О круто!! То что надо good.gif good.gif good.gif
В который раз СПАСИБО!!
Dead.MorozZ
А как сделать так, чтобы панель, на которой находится TreeView растягивалась, когда Дерево разворачивается и сворачивалась, когда Деревосвертывается??
volvo
Обрабатывай события OnCollapsed / OnExpanded
Dead.MorozZ
А как мне определить размер распахнутого TreeViev'a, если я хочу сделать его динамическим (т.е. когда дерево свернуто - Т\/ маленький, когда распахнуто - Т\/ большое)
volvo
Property Height и Width зачем? Можно так:
procedure TForm1.TreeView1Collapsed(Sender: TObject; Node: TTreeNode);
begin
treeview1.Width := 100;
treeview1.Height := 100;
end;

procedure TForm1.TreeView1Expanded(Sender: TObject; Node: TTreeNode);
begin
treeview1.Width := 200;
treeview1.Height := 200;
end;

А можно запомнить в OnCollapsed значение ширины/высоты и в OnExpanded его восстанавливать... Вариантов - море...
Dead.MorozZ
Какое св-во Т\/ не позволяет редактировать заголовки веток и корней?
volvo
Ты, наверное, про ReadOnly? Если его установить в True, то можно будет только распахивать/сворачивать TreeView, но не редактировать заголовки...
Dead.MorozZ
Как можно разворачивать дерево "в замедленном действии"?
Dead.MorozZ
Как убрать с дерева СкроллБары, которые появляются когда заголовки узлов не помещаются??
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.