Вниз
Скачать: 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.011 c
14-99355
Skurihin Aleksey
2002-12-10 19:30
2002.12.30
никому нетребуеться подающий большие потребности программист?


1-99159
___Nikolay
2002-12-17 12:21
2002.12.30
Как сделать так, чтобы можно было отменить


14-99267
Grifon
2002-12-05 15:20
2002.12.30
Как убежать от дяди Сэма?


1-99049
Лана Розанова
2002-12-19 11:38
2002.12.30
Ole объекты


4-99413
kosha80
2002-11-15 12:32
2002.12.30
Перехват запуска прилодения




   Наверх