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

Menu   Найти похожие ветки 

← →
qwe   (2003-11-11 16:25) [0]

Создаю пункт меню

NewItem:=TMenuItem.Create(MainForm);
MainMenu1.Items.Add(NewItems);

а как сделать реакцию на его нажатие


← →
stone ©   (2003-11-11 16:27) [1]

procedure ItemClick(Sender: TObject);
begin
...
end;

NewItem.OnClick := ItemClick;


← →
qwe   (2003-11-11 16:42) [2]

а Sender кто


← →
qwe   (2003-11-11 16:44) [3]

[Error] FMainForm.pas(76): Incompatible types: "TNotifyEvent" and "procedure, untyped pointer or untyped parameter"


← →
mOOx_ ©   (2003-11-11 16:49) [4]

Потому-что
TNotifyEvent = procedure (Sender: TObject) of Object ;

То-есть
procedure TAnyObject.ItemClick(Sender: TObject);
begin
...
end;


← →
qwe   (2003-11-11 17:20) [5]

NewItem1.OnClick := ItemClick;
NewItem2.OnClick := ItemClick;

внутри процедуры можно узнать кто вызвал ItemClick


← →
mOOx_ ©   (2003-11-11 17:28) [6]

(Sender as TMenuItem).Name


← →
qwe   (2003-11-11 17:33) [7]

procedure TMainForm.ItemClick(Sender: TObject);
var
S: string;
begin
S:=(Sender as TMenuItem).Name;
end;

получаю "" в обоих случаях, что то не правильно делаю


← →
Silver Alex ©   (2003-11-11 17:53) [8]

вобщем все вышеприведенное правильно.Что то ты еще наверное "делаешь не правильно"


← →
Игорь Шевченко ©   (2003-11-11 17:54) [9]

qwe (11.11.03 16:25)
Создаю пункт меню

NewItem:=TMenuItem.Create(MainForm);

qwe (11.11.03 17:33) [7]
procedure TMainForm.ItemClick(Sender: TObject);
var
S: string;
begin
S:=(Sender as TMenuItem).Name;
end;

получаю "" в обоих случаях, что то не правильно делаю

NewItem:=TMenuItem.Create(MainForm);
NewItem.Name:="BlahBlah";


← →
Ave ©   (2003-11-11 19:23) [10]

2qwe,
а если попробовать так:
s := TMenuItem(Sender).Name


← →
Ave ©   (2003-11-11 19:24) [11]

Хотя это одно и то же.



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

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



Память: 0.47 MB
Время: 0.023 c
1-65909
Alexious
2003-11-08 13:52
2003.11.20
Edit?


3-65748
Jony
2003-10-28 16:42
2003.11.20
Не работает связь master-detail


4-66165
keymaster
2003-09-24 14:25
2003.11.20
Как написать сервис на Delphi


1-65981
rel_
2003-11-10 14:45
2003.11.20
доступ к полю record а


3-65761
France
2003-09-22 19:14
2003.11.20
Как создать базу данных динамически для Interbase6.0 FireBird1.x?




   Наверх