Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.30;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.017 c
3-98976
Calm
2002-12-10 10:17
2002.12.30
Почему не отображаются значения полей?


14-99326
Sergo
2002-12-09 12:27
2002.12.30
FM-карта


14-99302
AL2002
2002-12-09 17:34
2002.12.30
Сокровища UseNet


14-99342
IL2
2002-12-10 22:12
2002.12.30
WinAPI


14-99259
ga_alx
2002-11-28 05:46
2002.12.30
Помогите создать схемный редактор