Вниз
Скачать: CL | DM;

MakeObjectInstance   Найти похожие ветки 

← →
Тимохов ©   (2004-04-15 11:15) [0]

Разбирался тут с методом TApplication.CreateHandle.
Наткнулся на FObjectInstance := Classes.MakeObjectInstance(WndProc);
....
SetWindowLong(FHandle, GWL_WNDPROC, Longint(FObjectInstance));

Вопрос по MakeObjectInstance.

Наскольо я понимаю метод MakeObjectInstance из classes используется для того, чтобы создать оконную процедуру, удовлетворяюшую типу WindowProc и вызывающую переданную процедуру (в данном случае TApplication.WndProc)?

Правильно?


← →
oleg_art   (2004-04-15 11:51) [1]

MakeObjectInstance - выделяется память под процедуру
SetWindowLong(FHandle, GWL_WNDPROC, Longint(FObjectInstance)) -
устанавл-ся новая оконная процедура для окна, имеющего Handle FHandle.

Желательно сохранить старую процедуру, иначе придется обрабатывать все Messages.


← →
Владислав ©   (2004-04-15 12:40) [2]

Смысл ее вот в чем. TApplication.WndProc - это метод, а оконная процедура в Windows - это функция. Остально, я думаю, Вам понятно. В метод нужно передавать указатель на экземпляр класса.


← →
Тимохов ©   (2004-04-15 13:13) [3]

Значит я все правльно понимаю - спасибо всем.



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

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



Память: 0.45 MB
Время: 0.022 c
3-1081082712
SergP
2004-04-04 16:45
2004.05.02
integer --> datetime. Как это сделать в запросе?


3-1081333332
Ascana_
2004-04-07 14:22
2004.05.02
Как выбранную запись сделать первой?


3-1080808013
Goida
2004-04-01 12:26
2004.05.02
Моя программа не хочет работать на другом компьютере.


6-1078374290
leosan
2004-03-04 07:24
2004.05.02
Функции преобразования IP адреса в имя компьютера


8-1075711384
Thick
2004-02-02 11:43
2004.05.02
RGB




   Наверх