![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по Handle TWinControl [D7, WinXP]
DVM © (2006-11-17 15:33:00)В каком методе TWinControl правильнее отлавливать создание/пересоздание Handle его окна?
clickmaker (2006-11-17 18:04:00) [1]
> Некошерно
согласен. Нужно что-то более нейтральное. Просто вариант с отслеживанием хэндла тоже какой-то... несколько трансректальный )
впрочем, хозяин - барин
Leonid Troyanovsky (2006-11-17 18:00:00) [2]
> clickmaker © (17.11.06 16:21) [11]
> PostMessage(FComp.Handle
Некошерно.
Допустим, что запрос хендла привел к CreateHandle.
Тогда окно создастся в рабочем потоке.
--
Regards, LVT.
clickmaker (2006-11-17 16:21:00) [3]PostMessage(FComp.Handle
Rouse_ (2006-11-17 16:03:00) [4]
> а почему бы в поток не передать сам указатель на компонент?
ИМХО затраты на синхронизацию будут гораздо больше чем на SendMessage ;)
DVM (2006-11-17 16:02:00) [5]
> а почему бы в поток не передать сам указатель на компонент?
Можно и так было. Что-то просто не пришло в голову так сделать.
clickmaker (2006-11-17 15:59:00) [6]а почему бы в поток не передать сам указатель на компонент?
DVM (2006-11-17 15:57:00) [7]
> Это я к тому, что Handle вещь не постоянная, и завесит от
> Parent.
Я для того и отлавливаю, чтобы потом новый Handle передать в поток используемый совместно с компонентом. Поток ему сообщения шлет.
Наиль (2006-11-17 15:55:00) [8]> Заодно понаблюдай, как ведёт себя Handle при смене Parent
> твоего компонента.
Это я к тому, что Handle вещь не постоянная, и завесит от Parent.
Наиль (2006-11-17 15:53:00) [9]>[3]
Именно так.
Заодно понаблюдай, как ведёт себя Handle при смене Parent твоего компонента.
clickmaker (2006-11-17 15:52:00) [10]
> А что это Handle не создается до тех пор, пока он не будет
> востребован?
для экономии ресурсов, видимо
DVM (2006-11-17 15:44:00) [11]
> clickmaker © (17.11.06 15:36) [1]
А что это Handle не создается до тех пор, пока он не будет востребован?
Т.е. я создал экземпляр потомка TWinControl, но не отобразил его, при этом CreateHandle не отработал. Как только отображаю или пытаюсь этот Handle считать - он создается, CreateHandle отрабатывает.
DVM (2006-11-17 15:41:00) [12]Спасибо.
clickmaker (2006-11-17 15:36:00) [13]CreateHandle