Главная страница
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.045 c
15-1166292829
<[exe-cutt3r]>
2006-12-16 21:13
2007.01.07
Задачи по D7


11-1143360784
filer
2006-03-26 12:13
2007.01.07
Как переходить между EditBox`ами по Tab?


15-1166414508
pkm
2006-12-18 07:01
2007.01.07
Запись звука.


4-1156745419
apic
2006-08-28 10:10
2007.01.07
контекст процесса


15-1166173142
alex_***
2006-12-15 11:59
2007.01.07
Не работает сайт. Какие службы должны быть запущены