Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.032 c
2-1166290330
anton773
2006-12-16 20:32
2007.01.07
обратиться к контролам на другой форме (.NET)


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


15-1164874807
TohaNik
2006-11-30 11:20
2007.01.07
Вот, влетел на задачке для 5-го класса.


2-1166364562
Max_2006
2006-12-17 17:09
2007.01.07
работа с SYSTEMTIME, FILETIME, прибавить любой промежуток времени


15-1166453613
Cyrax
2006-12-18 17:53
2007.01.07
С каких слов начинается текст справки...




   Наверх