Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
[Закрыто]Delphi: один popup на два контрола
14.09.2006 13:03
|
|
|
как узнать, на котором контроле был вызван попап?
Редактировал Basilio (14.09.2006 14:50)
|
|
Elric
|
Successful
|
|
|
|
Рег.: 03.01.2006
|
Сообщений: 817
|
|
Рейтинг: 216
|
|
Re: Delphi: один popup на два контрола
[re: Basilio]
14.09.2006 13:44
|
|
|
Sender.Tag?
Ну или (Sender is [Type]), Sender.Name=?, и т.п.
Редактировал Elric (14.09.2006 13:45)
|
|
Zoobastik
|
Комок меха
|
|
|
|
Рег.: 18.10.2003
|
Сообщений: 7462
|
Из: За спиной
|
Рейтинг: 4347
|
|
Re: Delphi: один popup на два контрола
[re: Elric]
14.09.2006 13:50
|
|
|
Хе-хе
code:
HWND GetParent (HWND hWnd);
А вообще я вопроса не понял
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Delphi: один popup на два контрола
[re: Elric]
14.09.2006 14:37
|
|
|
Sender.Name - возвращает TMenuItem.Name - имя пункта меню попапа.
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Delphi: один popup на два контрола
[re: Basilio]
14.09.2006 14:44
|
|
|
Чтобы стало чуть понятнее:
форма, два эдита, попап, мемо. у эдитов попап проставлен на попап1. код CheckMe:
code:
Memo1.Lines.Add((Sender as TComponent).Name)
Что при вызове с первого эдита, что при вызове со второго получаем всегда CheckMe1
|
|
heGoat
|
меритократ
|
|
|
|
Рег.: 28.08.2002
|
Сообщений: 10419
|
Из: стойло
|
Рейтинг: 6576
|
|
Re: Delphi: один popup на два контрола
[re: Basilio]
14.09.2006 14:45
|
|
|
а хелп почитать?
Quote:
PopupComponent property (TPopupMenu) Indicates the component that last displayed the popup menu in response to a right mouse click. Delphi syntax: property PopupComponent: TComponent;
|
think you are different? |
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Delphi: один popup на два контрола
[re: Zoobastik]
14.09.2006 14:46
|
|
|
не поможет. ибо вернет хэндл окна, а не контрола, с которого попап вызвали
|
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Delphi: один popup на два контрола
[re: heGoat]
14.09.2006 14:47
|
|
|
ууу
|
|
_Seti
|
Добрые руки
|
|
|
|
Рег.: 18.10.2003
|
Сообщений: 3164
|
|
Рейтинг: 2131
|
|
Re: Delphi: один popup на два контрола
[re: Basilio]
14.09.2006 14:49
|
|
|
ботай в направлении WindowFromPoint(Mouse.CursorPos)
|
|
heGoat
|
меритократ
|
|
|
|
Рег.: 28.08.2002
|
Сообщений: 10419
|
Из: стойло
|
Рейтинг: 6576
|
|
Re: Delphi: один popup на два контрола
[re: _Seti]
14.09.2006 14:51
|
|
|
знатоки, блин... вы ему еще хуки навесить посоветуйте...
|
think you are different? |
|
Basilio
|
GreenOne
|
|
|
|
Рег.: 14.10.2002
|
Сообщений: 13750
|
Из: Москва
|
Рейтинг: 3476
|
|
Re: Delphi: один popup на два контрола
[re: heGoat]
14.09.2006 14:52
|
|
|
|
_Seti
|
Добрые руки
|
|
|
|
Рег.: 18.10.2003
|
Сообщений: 3164
|
|
Рейтинг: 2131
|
|
Re: Delphi: один popup на два контрола
[re: heGoat]
14.09.2006 14:57
|
|
|
В ответ на:
знатоки, блин...
пример из прогамерского опыта: по клику на OLE-объет (импортированный Shockware Flash) нужно было выполнять некоторую функцию. Почему-то OnClick не перехватывалось. Кроме WindowFromPoint в голову ничего не пришло. А как правильно сделать?
|
|
Zoobastik
|
Комок меха
|
|
|
|
Рег.: 18.10.2003
|
Сообщений: 7462
|
Из: За спиной
|
Рейтинг: 4347
|
|
Re: Delphi: один popup на два контрола
[re: _Seti]
14.09.2006 15:01
|
|
|
Вероятно надо было ловить WM_PARENTNOTIFY или WM_NOTIFY.
|
|
Elric
|
Successful
|
|
|
|
Рег.: 03.01.2006
|
Сообщений: 817
|
|
Рейтинг: 216
|
|
Re: Delphi: один popup на два контрола
[re: Basilio]
14.09.2006 19:09
|
|
|
Sender маза смотреть в OnContextPopup контрола, если надо - там же сохранять его куда-нибудь.
Редактировал Elric (14.09.2006 19:10)
|
|
heGoat
|
меритократ
|
|
|
|
Рег.: 28.08.2002
|
Сообщений: 10419
|
Из: стойло
|
Рейтинг: 6576
|
|
Re: Delphi: один popup на два контрола
[re: Elric]
15.09.2006 09:09
|
|
|
да перестаньте вы гадать, я уже ответил выше, как правильно....
|
think you are different? |
|