Вниз
Скачать: 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.021 c
14-1097991268
YurikGL
2004-10-17 09:34
2004.11.07
Нашел тут интересные команды


14-1098186072
Herzog
2004-10-19 15:41
2004.11.07
Как разбить на строки...


14-1098256027
Cl
2004-10-20 11:07
2004.11.07
Ваши впечатления от Delphi8


4-1096526534
Muhsin
2004-09-30 10:42
2004.11.07
Запуск других приложений


3-1097051951
GanibalLector
2004-10-06 12:39
2004.11.07
BLOB в ХП




   Наверх