在Delphi中,事件实际上是专门化的属性,它是一个过程(procedure)的指针。要添加事件,首先应在所定义的类中说明一个用来指向事件过
程的指针,该指针的作用是当事件一旦发生,就通过这个指针执行所指向的处理这个事件的过程。最后通过指定符 published公布定义的事件
属性以及与之关联的事件处理过程指针。
private
FpCalc : TNotifyEvent;//事件处理过程指针
published
property OnpCalc:TNotifyevent read FpCalc write FpCalc;{定义事件属性名}
procedure TForm1.pCalc(Sender: TObject);
begin
//
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if assigned(FpCalc) then
OnpCalc(Self);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
FpCalc := pCalc;{使事件处理指针指向事件处理器}
end;