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

Выпадающее меню   Найти похожие ветки 

← →
Сайбель Алексей ©   (2004-10-21 15:32) [0]

Я программно создаю элементы выпадающего меню:
var
 NewItem:TMenuItem;
...    
 NewItem := TMenuItem.Create(Self);
 NewItem.Caption := OpenDialog1.FileName;
 ReOpen1.Insert(0,NewItem);


Как я мог бы обработать OnClick на этих вновь созданных меню?
tnk


← →
Ega23 ©   (2004-10-21 15:36) [1]

procedure TForm1.MenuItemClick(Sender:TObject);
begin
ShowMessage(TMenuItem(Sender).Caption);
end;

NewItem := TMenuItem.Create(Self);
NewItem.Caption := OpenDialog1.FileName;
NewItem.OnClick:=MenuItemClick;
ReOpen1.Insert(0,NewItem);


Но если у тебя Action"ы используются, то не прокатит, т.к. Сендером будет TAction передаваться.


← →
-=SS=- ©   (2004-10-21 15:39) [2]



var
NewItem:TMenuItem;
...    
NewItem := TMenuItem.Create(Self);
NewItem.Tag := 1;
NewItem.Caption := OpenDialog1.FileName;
ReOpen1.Insert(0,NewItem);

type
 TForm1 = class(TForm)
 private
    Procedure OnMyClick(Sender: TObject);
 public
................

Procedure TForm1.OnMyClick(Sender: TObject);
Begin
 Case (Sender as TMenuItem).Tag of
  1: ........ ;
  2: ........ ;
  ................
 end
End;


← →
Ega23 ©   (2004-10-21 15:46) [3]

2 -=SS=- ©   (21.10.04 15:39) [2]

Самое главное-то и забыл  :о)


← →
-=SS=- ©   (2004-10-21 16:09) [4]

>> Ega23 ©   (21.10.04 15:46) [3]
Да блин  голова уже вообще не варит


var
NewItem:TMenuItem;
...    
NewItem := TMenuItem.Create(Self);
NewItem.Tag := 1;
NewItem.Caption := OpenDialog1.FileName;
NewItem.OnClick := OnMyClick;
ReOpen1.Insert(0,NewItem);

type
TForm1 = class(TForm)
private
   Procedure OnMyClick(Sender: TObject);
public
................

Procedure TForm1.OnMyClick(Sender: TObject);
Begin
Case (Sender as TMenuItem).Tag of
 1: ........ ;
 2: ........ ;
 ................
end
End;


← →
Сайбель Алексей ©   (2004-10-21 17:12) [5]

Спасибо.



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

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



Память: 0.46 MB
Время: 0.024 c
1-1098423191
denis24
2004-10-22 09:33
2004.11.07
О strringlist и listbox


1-1098511623
ZiziPuk
2004-10-23 10:07
2004.11.07
Как быстро загружать ОЧЕНЬ большие файлы?


14-1097843810
snake1977
2004-10-15 16:36
2004.11.07
настройка Delphi


3-1097233419
NewDelpher
2004-10-08 15:03
2004.11.07
select в функции не получается


3-1097143003
Sid
2004-10-07 13:56
2004.11.07
Снова BDE + локалка




   Наверх