![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обработка событий меню, созданного в процессе работы [D6]
Шурик Ш © (2002-12-19 10:24:00)Мне необходимо создавать меню "at-run-time". Подскажите, пожалуйста, как при этом мне обрабатывать события выбора пунктов меню?
Шурик Ш (2002-12-19 10:34:00) [1]Спасибо!
stone (2002-12-19 10:31:00) [2]Все это описано в справке по Дельфи:
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
JohnnyJ (2002-12-19 10:29:00) [3]написать обработчик(и)
TSomeForm = class(TForm)
...
procedure SomeHandler(Sender: TObject);
...
end;
в run-time привязать их к пунктам меню:
...
MenuItem.OnClick := SomeHandler;
...
Skier (2002-12-19 10:26:00) [4]>Шурик Ш
Подвесь событие OnClick...