![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Subclassing.....
jonni © (2003-09-04 16:59:00)
sozdayu klass kotoriy iz sebya predstavlyaet okno opredelennogo klassa..... pri etom hochut sdelat" tak chto bi kazdiy noviy chlen klassa (chto yavlyaetsya otdel"nim oknom) imel svoyu spobstvennuyu WndProc
prohodya po src v dephi nashel vot kakie strochki...
//-----
WindowClass.lpfnWndProc := GetWndProc;
RegisterClass(WindowClass);
//----
function TWinControl.GetWndProc : pointer; assembler;
asm
MOV EAX,[EAX]
MOV EAX,[EAX]
end;
ne moglibi rastolkovat" chto znachit eta procedura GetWndProc..
jonni (2003-09-04 22:13:00) [1]
nu pryam vse ponyatno srazu stalo :)
MBo (2003-09-04 18:36:00) [2]
значение, лежащее по PInteger(Self^)^
jonni (2003-09-04 18:29:00) [3]
a chto vozvraschaetsya to?
MBo (2003-09-04 17:22:00) [4]
при вызове метода класса в EAX содержится Self - адрес экземпляра.
Первый mov заносит в Eax то, что лежит по этому адресу (очевидно, указатель на что-то), а второй - данные по адресу на который он указывает. Что именно там - надо копаться в system.pas