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

Динамическое создание PopupMenu и событие OnClick   Найти похожие ветки 

← →
НовичОк ©   (2004-09-28 01:25) [0]

Как узнать по какому пункту PopupMenu был клик, если PopupMenu создаётся динамически?

 with (Sender as TPopupMenu) do
 begin

   mi := TMenuItem.Create(self);
   with mi do
   begin
     Caption := "XXXXXX";
     OnClick := MyClick;
   end;
   Items.Insert(0, mi);

Таких пунктов много и для каждого нельзя написать обработку OnClick, вот я и думаю что нужно передать MyClick название пункта по которому был клик и дальше выполнять нужные операции. Или всё это делается как-то по-другому?

Заранее спасибо!


← →
Defunct ©   (2004-09-28 03:19) [1]

procedure MyClick(Sender: TObject);
begin
 with Sender as TMenuItem do
 Begin
   ShowMessage(Caption);
 End;
end;

Sender - выбранный пункт меню.


← →
Defunct ©   (2004-09-28 03:21) [2]

неточность допустил, сорри:

procedure TForm1.MyClick(Sender: TObject);
begin
if Sender is TMenuItem Then
with Sender as TMenuItem do // здесь Sender - пункт меню на который кликнули
Begin
  ShowMessage(Caption);
End;
end;



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

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



Память: 0.45 MB
Время: 0.021 c
1-1095560171
Matveyev
2004-09-19 06:16
2004.10.10
Создание файлов ресурсов


3-1095312215
Бар
2004-09-16 09:23
2004.10.10
по DBGrig


3-1094739127
Новик
2004-09-09 18:12
2004.10.10
Вопросики по MS SQL Server...


4-1093864382
Serguar
2004-08-30 15:13
2004.10.10
перехват сообщения предназначенного для другого окна


1-1096012898
AndrewH
2004-09-24 12:01
2004.10.10
Компонент для Crystal Reports 10




   Наверх