Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.07;
Скачать: CL | DM;

Вниз

Вопрос по Handle TWinControl   Найти похожие ветки 

 
DVM ©   (2006-11-17 15:33) [0]

В каком методе TWinControl правильнее отлавливать создание/пересоздание Handle его окна?


 
clickmaker ©   (2006-11-17 15:36) [1]

CreateHandle


 
DVM ©   (2006-11-17 15:41) [2]

Спасибо.


 
DVM ©   (2006-11-17 15:44) [3]


> clickmaker ©   (17.11.06 15:36) [1]

А что это Handle не создается до тех пор, пока он не будет востребован?
Т.е. я создал экземпляр потомка TWinControl, но не отобразил его, при этом CreateHandle не отработал. Как только отображаю или пытаюсь этот Handle считать - он создается, CreateHandle отрабатывает.


 
clickmaker ©   (2006-11-17 15:52) [4]


> А что это Handle не создается до тех пор, пока он не будет
> востребован?

для экономии ресурсов, видимо


 
Наиль ©   (2006-11-17 15:53) [5]

>[3]
Именно так.
Заодно понаблюдай, как ведёт себя Handle при смене Parent твоего компонента.


 
Наиль ©   (2006-11-17 15:55) [6]

> Заодно понаблюдай, как ведёт себя Handle при смене Parent
> твоего компонента.

Это я к тому, что Handle вещь не постоянная, и завесит от Parent.


 
DVM ©   (2006-11-17 15:57) [7]


> Это я к тому, что Handle вещь не постоянная, и завесит от
> Parent.

Я для того и отлавливаю, чтобы потом новый Handle передать в поток используемый совместно с компонентом. Поток ему сообщения шлет.


 
clickmaker ©   (2006-11-17 15:59) [8]

а почему бы в поток не передать сам указатель на компонент?


 
DVM ©   (2006-11-17 16:02) [9]


> а почему бы в поток не передать сам указатель на компонент?

Можно и так было. Что-то просто не пришло в голову так сделать.


 
Rouse_ ©   (2006-11-17 16:03) [10]


> а почему бы в поток не передать сам указатель на компонент?

ИМХО затраты на синхронизацию будут гораздо больше чем на SendMessage ;)


 
clickmaker ©   (2006-11-17 16:21) [11]

PostMessage(FComp.Handle


 
Leonid Troyanovsky ©   (2006-11-17 18:00) [12]


> clickmaker ©   (17.11.06 16:21) [11]

> PostMessage(FComp.Handle


Некошерно.
Допустим, что запрос хендла привел к CreateHandle.
Тогда окно создастся в рабочем потоке.

--
Regards, LVT.


 
clickmaker ©   (2006-11-17 18:04) [13]


> Некошерно

согласен. Нужно что-то более нейтральное. Просто вариант с отслеживанием хэндла тоже какой-то... несколько трансректальный )
впрочем, хозяин - барин



Страницы: 1 вся ветка

Текущий архив: 2007.01.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.051 c
2-1166288517
Viper_Omsk
2006-12-16 20:01
2007.01.07
Процедура при нажатии на "крест"


2-1166472073
allrussia
2006-12-18 23:01
2007.01.07
Приложение очень долго закрывается


2-1166021964
Michael69
2006-12-13 17:59
2007.01.07
Первый и последний видимый символ в TRichEdit


1-1163592392
DelphiLexx
2006-11-15 15:06
2007.01.07
Объединить колонки DBGridEh a определенной записи


2-1166178990
Bullfrog
2006-12-15 13:36
2007.01.07
проблема с кодом программы