关于事件 (50分)

  • 主题发起人 主题发起人 mywuti
  • 开始时间 开始时间
M

mywuti

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure FieldChange(Sender:TField);
begin
showMessAge(Sender.asString);
end;

procedure DataSetAfterOpen(DataSet: TDataSet);
begin
DataSet.Fields.OnChange:=FieldChange;
end;

把FieldChange传给字段的OnChange事件,
但如果OnChange有存在过程都会被FieldChange代替,
有无办法让原OnChange中的过程执行后,再执行FieldChange?
 
只有先用一个临时变量先保存原过程的指针,再在FieldChange事件中调用
 
如:

Var
Del:TDataSetNotifyEvent;
begin
Del := DataSet.Fields.OnChange;
执行你的代码;
DataSet.Fields.OnChange :=del;
end;
 
//只有先用一个临时变量先保存原过程的指针,再在FieldChange事件中调用
FieldChange已经指定为原事件的过程,在其中调用原过程指针会死循环,
请举例子.
to jianguobu
应该放在什么地方?
 
多人接受答案了。
 
后退
顶部