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

Вниз

Передача ссылки на метод класса.   Найти похожие ветки 

 
Darrin ©   (2004-10-26 19:12) [0]

Доброго времени суток.
Подскажите пожалуйста, как передать в процедуру ссылку на другую процедуру (метод какого-либо класса), а потом по этой ссылке обратиться к методу.
При попытке присвоить ссылку на метод переменной типа Pointer, P: Pointer;
....
P:=@MyMetod;
компилятор требует указать входящие переменные.
Заранее спасибо.
З.Ы. Тобишь охото передать ссылку на метод, как то делается в API методе SetWindowsHookEx(WH_mouse, @GlobalMouseHook,HInstance, 0);


 
Юрий Зотов ©   (2004-10-26 19:42) [1]

type

 TShowMsgProc = procedure(const Msg: string) of object; {!!!}

 TForm1 = class(TForm)
   procedure FormClick(Sender: TObject);
 private
   procedure ShowMsg(const Msg: string);
 end;

implementation

procedure CallMethod(Proc: TShowMsgProc); {!!!}
begin
 Proc("OK")
end;

procedure TForm1.FormClick(Sender: TObject);
begin
 CallMethod(ShowMsg)
end;

procedure TForm1.ShowMsg(const Msg: string);
begin
 ShowMessage(Msg)
end;


 
Darrin ©   (2004-10-26 22:42) [2]

>> Юрий Зотов ©   (26.10.04 19:42) [1]
Спасибо.



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

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

Наверх




Память: 0.47 MB
Время: 0.044 c
1-1098732917
Colonel
2004-10-25 23:35
2004.11.07
Меню в Desktop


1-1098394798
Makhanev A.S.
2004-10-22 01:39
2004.11.07
Директивы условной компиляции...


3-1097080645
TAHK
2004-10-06 20:37
2004.11.07
Проблема с ADO


14-1097772051
Rouse_
2004-10-14 20:40
2004.11.07
Нет, ну я балдю с подрастающего поколения...


1-1098686822
Last
2004-10-25 10:47
2004.11.07
Как задавить нажатие клавиши Enter?