TNotifyEvent是Delphi中基本通知事件的類型,定義爲:
type
TNotifyEvent = procedure(Sender: TObject) of object;
它除了發送者外不帶任何其他信息,只用作通知程序某個事件已經發生的用途。
可以自己定義許多類似的類型,用來處理事件;
TMyNotify = procedure( i: integer );
注意:of Object 表明該事件只能在 對象裏面調用, 該關鍵字也可以不用.
TmouseEvent
鼠標點下事件的鼠標事件類型,它其實就是方法指針:
type TmouseEvent = procedure (sender: tobject; button: tmousebutton; shift: tshiftstate; x, y: integer) of object;
TNotifyEvent
定義:TNotifyEvent = Procedure(Sender: TObject) of object; //TNotifyEvent類指向一個過程
在delphi中,事件也是一個類,類型就是過程型,不同的事件屬於不同的類,TNotifyEvent就是使用得最多的事件類,可以在代碼中把一個過程賦給事件,當然是相同類的。
通常作爲回調函數來使用,
例如你寫了一個函數
Procedure myclick(sender :TObject);
begin
xxxx;
end;
你就可以把它賦值給聲明成tnotifyevent類型的屬性,如:button1.onclick := myclick