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

Посоветуйте, как лучше заполнить PopupMenu   Найти похожие ветки 

← →
Ega23 ©   (2008-05-23 15:30) [0]

Есть система классов - один базовый и несколько потомков. Есть некоторое количество объектов данных классов.
Есть TreeView. В Node.Data сидят указатели на эти объекты.
Есть PopupMenu. В зависимости от текущего объекта формируется разный набор доступных действий.
Собственно вопрос: как бы получше сделать перестроение менюшки? Закладываться на OnChangeNode - не хочется, т.к. я ведь могу его вообще ни разу не вызвать...


← →
Reindeer Moss Eater ©   (2008-05-23 15:31) [1]

Взять три из виртуал контролс там у нода есть метод ongetpopupmenu


← →
Reindeer Moss Eater ©   (2008-05-23 15:34) [2]

то есть будет N фиксированных попап меню, которые будут выбираться динамически


← →
Reindeer Moss Eater ©   (2008-05-23 15:38) [3]

ну или строить меню в его же онпопап


← →
Ega23 ©   (2008-05-23 15:38) [4]


> то есть будет N фиксированных попап меню, которые будут
> выбираться динамически


Э нет, так не пойдёт. В том-то и дело, что действия - динамически изменяются. Никаких статичных PopupMenu

В принципе, я тут поигрался, на OnPopup можно заложиться...


← →
Reindeer Moss Eater ©   (2008-05-23 15:39) [5]

так у разных узлов будут разные попап меню.
а сами менюшки - просто пустышки смотрящие на акшенлист


← →
Palladin ©   (2008-05-23 15:40) [6]

OnContextPopup хужее?


← →
clickmaker ©   (2008-05-23 15:43) [7]

function TBaseClass.QueryContextMenu(): TPopupMenu или набор действий в каком-то удобном виде; virtual; ?


← →
Ega23 ©   (2008-05-23 15:52) [8]


> function TBaseClass.QueryContextMenu(): TPopupMenu или набор
> действий в каком-то удобном виде; virtual; ?


Не, не пойдёт, классы вообще не визуальные и про визуализацию ничего знать не должны.

OnPopup подходит, всем спасибо.



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

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



Память: 0.46 MB
Время: 0.01 c
2-1211539949
StiTch
2008-05-23 14:52
2008.06.15
E-Mail


2-1211270505
RR Bom
2008-05-20 12:01
2008.06.15
DBGrid1


6-1189062586
tytus
2007-09-06 11:09
2008.06.15
WinSock2 - и номера протоколов


2-1211457279
Первокласник Вася
2008-05-22 15:54
2008.06.15
Электронная почта


15-1209881696
oldman
2008-05-04 10:14
2008.06.15
Проблема с блоком питания.




   Наверх