Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.15;
Скачать: CL | DM;

Вниз

Как узнать указатель на функцию?   Найти похожие ветки 

 
Dmk ©   (2002-07-02 05:15) [0]

Как узнать указатель на функцию, если она описана например в потомке класса TForm? Если делать так

cwpPointer := @TDrawForm.ClientWindowProc;

то при передаче управления работает все кроме этой функции.
Или это указатель на место где лежит реальное значение?


 
Dmk ©   (2002-07-02 05:18) [1]

Sry. Работает не все. Класс TDrawForm вообще не работает. :(


 
Dmk ©   (2002-07-02 05:20) [2]

А если сделать эту функцию не в классе то все нормально. ClientWindowProc работает, но ей не доступны переменные класса. :(


 
T'Mon ©   (2002-07-02 05:45) [3]

Procedure of object - это восьмибайтовый указатель.
Так что делай примерно так:
type
TClientWindowProc = procedure(...) of object;

var
cwpPointer: TClientWindowProc;

...
cwpPointer := DrawForm.ClientWindowProc
...


Учти в присвоении нужен реальный объект.


 
MBo ©   (2002-07-02 06:43) [4]

type OProc=procedure of object;
var M:TMethod;

begin

M.Code := @TSomeClass.SomeProc;
M.Data := Self;//или нужный экземпляр объекта
OProc(M);




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

Текущий архив: 2002.07.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
1-47256
zzet
2002-06-24 20:55
2002.07.15
Вопрос по реестру


3-47204
Teas
2002-06-19 13:02
2002.07.15
Еще о DBGrid


3-47146
dimanew
2002-06-25 07:48
2002.07.15
Возможнали работа c IB через ADO и как это делается,


3-47145
dr_neo
2002-06-21 23:04
2002.07.15
Поиск по Access


4-47902
whc
2002-05-15 17:45
2002.07.15
Соответствие пароля и логина в NT