Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

PopupMenu - определить какой Item вызвал событие OnClik [D7, WinXP]


Страницы:   1 2

Gavrila ©   (2008-03-26 13:37:00) 

Всем добрый день. Подскажите, плз, по следующему вопросу:

popupmenu состоит из динамически изменяемых Items, у всех на событие OnClik стоит одна процедура:

Procedure TForm1.PM_OnClik(Sender: TObject);
Begin
...
End;

как внутри PM_OnClik узнать какой именно Item(Name) вызвал событие?


Kolan   (2008-03-26 17:54:00) [21]

> Собственно, меня это у тебя как-то и не удивляет.

Почему это вдруг?


Ega23   (2008-03-26 16:29:00) [22]

Короче, не в Action-ах дело.
А в том, что смотреть Sender у TMenuItem.OnClick - дело опасное.


Ega23   (2008-03-26 16:27:00) [23]


> myAction.Execute


Я сейчас точно не вспомню, но какие-то проблемы с этим были.


Плохиш   (2008-03-26 16:26:00) [24]


> Kolan ©   (26.03.08 15:50) [6]
> Честно говоря никогда не проверял на нил Sender

Собственно, меня это у тебя как-то и не удивляет.


Kolan   (2008-03-26 16:18:00) [25]

> myAction.OnExecute(nil);


А так никак нельзя?
myAction.Execute
?


Ega23   (2008-03-26 15:56:00) [26]


> Честно говоря никогда не проверял на нил Sender как-то странно…
> Сообщение есть, а отправителя нет…


????
myAction : TAction;
.....

myAction.OnExecute(nil);


Kolan   (2008-03-26 15:50:00) [27]

Честно говоря никогда не проверял на нил Sender как-то странно… Сообщение есть, а отправителя нет…

ЗЫ
 Понято что если компонент написан через ж. то такое может случится… Но стоит ли на это ассчитывать?


Плохиш   (2008-03-26 15:20:00) [28]


> Проверка на класс остаёться домашним заданием

и на нил тоже ;-)


tesseract   (2008-03-26 15:15:00) [29]


> ЕМНИП, в качестве Sender может Action вернуться. Так что
> аккуратнее с этим...


Там что хошь может вернуться. Проверка на класс остаёться домашним заданием :-).


Ega23   (2008-03-26 15:03:00) [30]


> TMyItem(Sender).Name;


ЕМНИП, в качестве Sender может Action вернуться. Так что аккуратнее с этим...


Gavrila   (2008-03-26 14:00:00) [31]


> tesseract ©   (26.03.08 13:46) [1]
>
> TMyItem(Sender).Name;


Спасибо большое, получилось


tesseract   (2008-03-26 13:46:00) [32]


> как внутри PM_OnClik узнать какой именно Item(Name) вызвал
> событие?


TMyItem(Sender).Name;


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо