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

Вниз

Динамическое создание меню   Найти похожие ветки 

 
KOLBoss ©   (2007-11-17 15:20) [0]

Подскажите как это зделать
Пробывал но даже скомпилить не смог
PopupMenu1.AddItem(ACaption, Event, TMenuOptions);
что нухно писать в TMenuOptions
и как реолезовать событие
зарание благодарен.


 
KOLBoss ©   (2007-11-17 17:59) [1]

Всё разобрался

type
procedure Event(Sender: PMenu; Item: Integer);
...
PopupMenu1.AddItem("ACaption", Event, []);


 
Danger ©   (2007-11-17 18:28) [2]

Если пункты меню не изменяются во время выполнения программы - посмотрите создание меню в уроке №7 "Программа в треe с легкостью" из цикла уроков по KOL/MCK, и делайте меню в рантайме, примерно как там описано. В примерах тоже может есть.

Если надо добавить пункт в уже существующее меню, тогда примерно так:

procedure TForm1.Button1Click(Sender: PObj);
begin
PM.AddItem( "My Item",  TOnMenuItem( MakeMethod( nil, @TForm1.OnMyItemClicked ) ), [ ] );
end;

procedure TForm1.OnMyItemClicked(Sender : PMenu; Item : Integer );
begin
msgOk( " Message " );
end;


 
D[u]fa ©   (2007-11-17 18:51) [3]

а зачем OnMenuItem( MakeMethod( nil, @TForm1.OnMyItemClicked ) ) в данном случае мона просто OnMyItemClicked


 
Danger ©   (2007-11-17 20:06) [4]


> D[u]fa ©   (17.11.07 18:51) [3]
> а зачем OnMenuItem( MakeMethod( nil, @TForm1.OnMyItemClicked
> ) ) в данном случае мона просто OnMyItemClicked

Да, конечно ;) Я взял кусок из старого проекта, запостил и потом только заметил, что не выкинул лишнее (в оригинале обработчиком была процедура - не метод объекта формы). Спохватился, но так как работало, второй раз писать не стал.



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

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

Наверх




Память: 0.47 MB
Время: 0.007 c
15-1221304193
На паре
2008-09-13 15:09
2008.11.09
Как расположить эл-ты массива в обратном порядке?


2-1222670540
Iris
2008-09-29 10:42
2008.11.09
Пробелма записи в файл


2-1222866483
Savek
2008-10-01 17:08
2008.11.09
Delphi 7 destruction


8-1187527943
s7r
2007-08-19 16:52
2008.11.09
Программное изменения вида в TOpenDialog.


2-1222682642
Vlad Oshin
2008-09-29 14:04
2008.11.09
PageControl и 2 tabsheet. Дизайн