一、在要回调的单元加一个回调类
type
TMyCallback =procedure(X, Y: Integer;...其它参数) of object;
二、在单元
TMyClass=class()中加下面的回调过程变量
public
FMyCallback: TMyCallback;
三、在要使用回调的过程、事件、函数中加
procedure TMyClass.click(Sender: TObject);
begin
//代码1
FMyCallback(x,y,...其它参数);
//代码2
end;
四、在调用TMyClass的程序中定义一个过程
TForm1 = class(TForm)
private
procedure Newcallback(X, Y: Integer;...其它参数);
public
end;
var
Myclass:TMyClass;
五、实现Newcallback。
六、回调赋值
Myclass.FMyCallback:=@Newcallback;
以上就实现了回调。在运行TMyClass.click时运行顺序为:代码1--TForm1.Newcallback-代码2