Вниз
Скачать: CL | DM;

Развернуть узел дерева с помощью клавиатуры   Найти похожие ветки 

 
forrest1   (2002-02-15 09:57) [0]

Доброе утро, господа!
Подскажите, как развернуть определённый узел дерева при нажатии какой-нибудь клавиши клавиатуры.
Я пишу следующее
procedure TEnterpriseF.TreeView1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var r :boolean;
begin
r:=True;
case Key of
13 : begin // клавиша Enter
i:=0;
While (not TreeView1.Items[i].Selected) and (i<TreeView1.Items.Count) do
i:=i+1;
TreeView1Expanding(TreeView1,TreeView1.Items[i],r);
end;
end;
end;
Но после выполнения этого - никакого результата!
помогите, pls
Спасибо!


 
McSimm ©   (2002-02-15 10:20) [1]

TreeView1Expanding похоже является вызовом события OnExpanding.

Все наоборот. Это событие должно вызывать обработчик.

Чтобы развернуть элемент, надо либо установить его св-во Expanded := True; либо вызвать метод Expand(True/False), где в качестве параметра можно указать - разварачивать рекурсивно или только этот элемент.

if Assigned(TreeView1.Selected) then
TreeView1.Selected.Expand(True);


 
troits ©   (2002-02-15 10:23) [2]

Не понятно, что ты хочешь.
Зачем перебирать все узлы дерева?
Во - первых, это долгая операция, лучше к узлам вообще так не обращаться, а, во - вторых, получить selected - узел можно с помощью TreeView1.Selected . А "развернуть" его - TreeView1.Selected.Expand


 
forrest1   (2002-02-15 10:32) [3]

Огромное спасибо всем, кто ответил!!!
Мастерство не пропьёшь. :))



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
14-9291
@ndron
2002-01-16 00:17
2002.03.04
Delphi : Win API


1-9147
Poirot
2002-02-17 05:42
2002.03.04
Как сделать форму прозроачной - Alpha например на 70%


1-9233
staratel
2002-02-13 15:29
2002.03.04
web


7-9321
User_OKA
2001-11-28 15:25
2002.03.04
System Tray


1-9109
GarT
2002-02-15 17:00
2002.03.04
Возникает ошибка при обращении к функции из DLL




   Наверх