首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

TNofiFyEvent 是什么部类? 对创建组件事件有什么用

2013-06-25 
TNofiFyEvent 是什么类型? 对创建组件事件有什么用?TNofiFyEvent 是什么类型? 对创建组件事件有什么用?[解

TNofiFyEvent 是什么类型? 对创建组件事件有什么用?
TNofiFyEvent 是什么类型? 对创建组件事件有什么用?
[解决办法]
TNofiFyEvent 是什么类型?
TNotifyEvent 通知事件类型。 是最普遍的一类函数指针类型,delphi中也把它称作事件句柄。
TNotifyEvent 类型指向任何一个函数签名(参数与返回值)与之匹配的函数的地址。

TNotifyEvent = procedure(Sender: TObject) of object;
// 它指向的函数的签名为: 
// 一个对象的成员函数
// 无返回值,即“procedure 过程”
// 需要一个TObject类型的变量,通常为该对象自身的引用,即Self


 对创建组件事件有什么用?
用button做例子。


FOnClick: TNotifyEvent; // 私有成员
property OnClick: TNotifyEvent read FOnClick write FOnClick;// 公布的属性,属性即为FOnClick

// 例如你在窗体放置一个button1,TButton 类中定义了私有成员变量 
// 双击该button,就会自动生成一个匹配 OnClick (TNotifyEvent类型)签名的函数
// 这时,OnClick 指向这个button1Click 函数的地址
procedure TForm1.button1Click(Sender: TObject);
begin
  // 本函数是一个对象的成员函数,带一个TObject类型的参数,无返回值,完全匹配TNotifyEvent
end;

// 回到TButton类的定义中,TButton内就可以直接 FOnClick(self) 调用,
// 就好像调用了TForm1.button1Click 一样

// 这就是一个事件的经过

热点排行