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

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

Нужен хендл окна, на который плюхнули компонент [D5, Win2k, WinXP]


Страницы:   1 2

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]

Для каких целей?


Страницы:   1 2

Наверх

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