自己写一个类,它有一些事件,如何让多个控件都可以订阅和处理这个事件? ( 积分: 30 )

  • 主题发起人 主题发起人 kingbenz
  • 开始时间 开始时间
K

kingbenz

Unregistered / Unconfirmed
GUEST, unregistred user!
自己写一个类,它有一些事件,如何让多个控件都可以订阅和处理这个事件?
 
自己写一个类,它有一些事件,如何让多个控件都可以订阅和处理这个事件?
 
订阅和处理这个事件? 具体点
 
TTest = class(TObject)
private
FOnDeviceConnect: TNotifyEvent;
public
property OnDeviceConnect: TNotifyEvent read FOnDeviceConnect write FOnDeviceConnect;
end;

begin
if DeviceConnect then
if Assigned(FOnDeviceConnect) then
FOnDeviceConnect(Self);
end;
如上面代码,会引发TTest类的一个事件,
Test.OnDeviceConnect := Test2.processDeviceConnet;
将Test2控件的事件处理过程与该事件关联后,Test2可以接收到该事件并进行处理,问题是Test3,Test4......也要接收这个事件并进行处理,如果再写一条
Test.OnDeviceConnect := Test3.processDeviceConnet;
那么Test2的的processDeviceConnet就没用了。我是想无论有多少个组件订阅了Test.OnDeviceConnect,每个控件都可以接收得到这个事件。
 
搞不懂,如果在这个类里面某个链表保存它的其他类的实例呢

不就可以处理了,其他类向这个链表添加自己的引用就可以了
 
接受答案了.
 
后退
顶部