![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нужен хендл окна, на который плюхнули компонент [D5, Win2k, WinXP]
Zilog © (2004-12-16 00:08:00)Делаю невизуальный копонент. В коде потребовалось использовать хендл окна, на который плюхнули компонент. Никак не могу его вытащить.... Application.Handle не подходит.
constructor TDesktopBar.Create(AOwner:TComponent);
begin
inherited Create(AOwner);
FHandle := ????? <<< вот сюда бы мне его
RegisterBar;
end;
Zilog (2004-12-16 00:46:00) [21]я пытаюсь подсмотреть в стандартном unit AppEvnts (с закладки Additional), я так полагаю этот компонент обязан как то быть связанным с окном, приютившим его. Пока не получается....
Zilog (2004-12-16 00:43:00) [22]2jack128
у меня Owner типа TComponent - и мне кажется твой пример работать не будет
Zilog (2004-12-16 00:42:00) [23]2Gero
ну мне с размерчиком приложения необходимо поиграть, с его расположением, обработать кой-какие адресованные ему месседжи.
Gero (2004-12-16 00:31:00) [24]
> jack128 © (16.12.04 00:29)
MyCoolPopup := TPopupMenu.Create(Form2.Button1);
Можно ли сказать, что MyCoolPopup "плюхнули" на Form2.Button1?
jack128 (2004-12-16 00:30:00) [25]Блин, сорри, естественно
if Owner is TWinControl then
Result := TWinControl(Owner).Handle
jack128 (2004-12-16 00:29:00) [26]
function TMyCoolComponent.GetParentHandle: THandle;
begin
if Owner is TWinControl then
Result := TWinControl(Owner)
else
Result := 0
end;
Gero (2004-12-16 00:13:00) [27]Для каких целей?