Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обработка событий меню, созданного в процессе работы [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...


Наверх

Титульная страница Поиск, карта сайта Написать письмо