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

Обработка событий меню, созданного в процессе работы   Найти похожие ветки 

 
Шурик Ш ©   (2002-12-19 10:24) [0]

Мне необходимо создавать меню "at-run-time". Подскажите, пожалуйста, как при этом мне обрабатывать события выбора пунктов меню?


 
Skier ©   (2002-12-19 10:26) [1]

>Шурик Ш
Подвесь событие OnClick...


 
JohnnyJ ©   (2002-12-19 10:29) [2]

написать обработчик(и)

TSomeForm = class(TForm)
...
procedure SomeHandler(Sender: TObject);
...
end;


в run-time привязать их к пунктам меню:

...
MenuItem.OnClick := SomeHandler;
...


 
stone ©   (2002-12-19 10:31) [3]

Все это описано в справке по Дельфи:

procedure TForm1.AddButtonClick(Sender: TObject);
var
index: Integer;
NewItem: TMenuItem;
begin
for index := 0 to 3 do
begin
NewItem := TMenuItem.Create(PopupMenu1); // create the new item
PopupMenu1.Items.Add(NewItem);// add it to the Popupmenu
NewItem.Caption := "Menu Item " + IntToStr(index);
NewItem.Tag := index;
NewItem.OnClick = PopupMenuItemsClick;// assign it an event handler
end;

end;

procedure TForm1.PopupMenuItemsClick(Sender: TObject);
begin
with Sender as TMenuItem do
begin
case Tag of
0: ShowMessage("first item clicked");
1: ShowMessage("second item clicked");
2: ShowMessage("third item clicked");
3: ShowMessage("fourth item clicked");
end;
end;
end;

ЗЫ. Чаще жмите Ф1


 
Шурик Ш ©   (2002-12-19 10:34) [4]

Спасибо!



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

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



Память: 0.45 MB
Время: 0.012 c
14-99288
kingdom
2002-12-06 20:06
2002.12.30
Нужна информация по Install Shield Professional ?


7-99366
Карелин Артем
2002-10-25 15:58
2002.12.30
Как определить размер памяти, используемом прогой.


7-99368
Snake
2002-10-22 11:38
2002.12.30
Установки видеокарты. Посоветуйте, как?


1-99119
Krot
2002-12-17 16:16
2002.12.30
прозрачность компонента


14-99321
.nuke
2002-12-09 17:16
2002.12.30
опрос...




   Наверх