Форум: "Основная";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
ВнизРазвернуть узел дерева с помощью клавиатуры Найти похожие ветки
← →
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 вся ветка
Форум: "Основная";
Текущий архив: 2002.03.04;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.005 c