2、送消息。这种方式,调用者在主线程中,被调用者在主线程或者工作线程中。 Delphi事件模型:在Delphi的VCL中有很多可视化组件都是使用事件模型,例如TForm的OnCreate事件,其原理是:在设计时指定事件函数,在运行时事件触发,则会调用在设计时指定的事件函数。在机制上,Delphi事件模型与回调是一样的。但具体形式有些区别,纯的回调函数是全局函数的形式,而Delphi事件是对象方法的形式,即可以定义如下回调函数类型 type TCallBackFunc=procedure(pData:Pointer)ofobject;2回调函数的
5、序中实现此回调函数或着过程;FunctionHdFunExample(k:integer,sExam:string):integer;stdcall; Begin End; procedureHdProExample(sExam:string);stdcall; begin end; 4、调用过程; 回调函数一般作为系统的某个函数的入口地址; 根据调用函数的原形:进入讨论组讨论。 假设有如下调用函数:functionDyHdFunExample(HdFun:THDFunction;I:integer):boolean;注:
6、在调用函数中通过对函数指针的处理可以直接调用回调函数(即调用函数中的那个是回调函数类型的参数,直接操作它),使回调函数履行一定的操作。即在调用函数中实现回调函数的功能。 调用:var I:integer; begin I:=DyHdFunExample(@HdFunExample,i); //……. End;3举例说明 示例程序在H:回调函数示例目录下面。 回调函数的使用主要在于windows原有的API函数,但对于用户的自定义的调用函数一般在于动态连接库中。常规的同一个工程下面一般不需要使用回调函数。(个人认为).。Del