Вниз
Скачать: 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.045 c
1-1095860301
DelphiLexx
2004-09-22 17:38
2004.10.10
Стили окна


3-1094875076
Солер
2004-09-11 07:57
2004.10.10
Связь ячйки таблицы базы с ячейкой Word


4-1093849769
Ev1972
2004-08-30 11:09
2004.10.10
Как заменить EXE-файл во время выполнения?


4-1094709448
RagE
2004-09-09 09:57
2004.10.10
Загрузчик PE из памяти, специально для тех кто не верит


3-1094813399
Vilkkkka
2004-09-10 14:49
2004.10.10
Firebird & Interbase




   Наверх