Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.29;
Скачать: CL | DM;

Вниз

Insert/Delete/Edit для TreeView   Найти похожие ветки 

 
Aric   (2002-07-16 12:01) [0]

Приветствую!
Проблема собственно вот в чем:
Есть два TreeView, и три кнопки соответственно Вставка узла, удаление и редактирование, причем редактирование - это не изменение названия узла, а изменение связанных с ним данных из соответствующих СтрингЛистов, для каждого их два.
Нужно отслеживать, на каком именно TreeView, 1 или 2-м, нажаты эти кнопки. ActiveControl не подходит, т.к. в момент нажатия активен контрол кнопки, как я понимаю.
И ваще, буду признательна за пример работы с TreeView, со вставкой и удалением узлов (только не по клавишам), хотя бы...


 
Song ©   (2002-07-16 12:09) [1]

Вообще по-моему легче расположить их на TabSheet"ах, тогда будет всё логичней.
А если хотите как Вы задумали, тогда можно сделать флажок, который будет показывать какой TTreeView выбран и изменять его на TTreeView.onEnter


 
Skier ©   (2002-07-16 12:10) [2]

>Aric
Можно "запоминать" какое именно дерево активно в тот момент
когда дерево получает фокус и записывать указатель на текущее дерево во временную переменную.

А в момент нажатия кпонки смотреть - что во временной переменной



 
Digitman ©   (2002-07-16 12:13) [3]

А каким образом ты умудрилась сделать TTreeView контейнером для кнопок ? Или они просто визуально расположены в зоне клиентского окна компонента TreeView ?


 
TTCustomDelphiMaster ©   (2002-07-16 12:14) [4]

Заведи переменную
LastActivTreeView: TTreeView;
и изменяй ее значение допустим по onEnter


 
Aric   (2002-07-16 12:22) [5]

Спасибо всем за ответы! Отдыхать, видимо, надо больше. С флпгом все получилось, терь еще вопрос: при смене текущего узла надо менять инфу в Едит-ах, повесила вроде на Changing, но работает как-то криво(


procedure TForm1.TreeView2Changing(Sender: TObject; Node: TTreeNode;
var AllowChange: Boolean);
begin
if TreeView2.SelectionCount <> 0
then
begin
Edit2.Text := TreeView2.Selections[0].Text;
Edit1.Text := St_n2[TreeView2.Selections[0].Index];
Edit3.Text := St_k2[TreeView2.Selections[0].Index];
end;
end;


 
Skier ©   (2002-07-16 12:26) [6]

>Aric
Лучше повесь на OnChange


 
Aric   (2002-07-16 12:39) [7]

В общем вот это TreeView2.Selections[0].Index; не работает, вернее работает не так, как мне б хотелось. Там хранится индекс в списке выделения, а мне нужен индекс выделенного узла. Помогите!


 
Skier ©   (2002-07-16 12:41) [8]

>Aric

TreeView2.Selected ?


 
Aric   (2002-07-16 12:43) [9]

Все, вопросы все сняты. Всем спасибо.



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

Текущий архив: 2002.07.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
1-95367
Андрусь
2002-07-15 19:22
2002.07.29
Как приспособить своё приложение к разным настройкам ш


3-95269
Loco
2002-07-09 15:43
2002.07.29
Query


4-95629
Voland!
2002-05-21 03:29
2002.07.29
Снова про Крысу!!!


1-95411
NewUser
2002-07-16 12:54
2002.07.29
Поток ввода-вывода и массив


14-95531
Fiend
2002-07-02 16:16
2002.07.29
От я всё же поражаюсь людям