![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как к одному событию нажатия на popup меню привязать два разных [D5, D6, Win95/98]
iNew © (2002-11-08 10:11:00)действия, т.е. Image1.PopUpMenu:=PopUpMenu1;
Image2.PopUpMenu:=PopUpMenu1;
procedure TMainForm.PopUpClick(Sender: TObject);
begin
if PopUpMenu нажали на Image1 then
begin
……
end;
if PopUpMenu нажали на Image2 then
begin
……
end;
end;
Alex44 (2002-11-08 11:02:00) [1]if PopUpMenu1.PopupComponent = ...
Mozhno postavit" im raznye Tag"i i
case PopUpMenu1.PopupComponent.Tag of
Sender vsegda MenuItem
MBo (2002-11-08 10:40:00) [2]потому что sender- не image, а меню или его элемент - для этого случая мой последний пример
iNew (2002-11-08 10:37:00) [3]Если делать
if Sender = Image1 then
begin
...
end;
if Sender = Image2 then
begin
...
end;
то ничего не происходит, почему?
MBo (2002-11-08 10:28:00) [4]procedure TForm1.N111Click(Sender: TObject);
begin
Caption:=TPopupMenu(TMenuItem(Sender).GetParentMenu).PopupComponent.Name;
end;
Cobalt (2002-11-08 10:28:00) [5]Упс, точно, не
isa=
Cobalt (2002-11-08 10:18:00) [6]>iNew (08.11.02 10:11)
Сравнивай Sender - это тот элемент, который "произвел" событие.
procedure TMainForm.PopUpClick(Sender: TObject);
begin
if (Sender is Image1)
then begin
....
end
else if (Sender is Image2)
then begin
....
end;
MBo (2002-11-08 10:17:00) [7]if Sender=... then
Николай Быков (2002-11-08 10:13:00) [8]А где вопрос?