当前位置:主页>销售管理软件> 列表

TComponent的FreeNotification方法 找计算机管理软件

库存管理软件版1楼: procedure TComponent.FreeNotification(AComponent: TComponent);
begin
if (Owner = nil) or (AComponent.Owner <> Owner) then
begin
// Never acquire a reference to a component that is being deleted.
assert(not (csDestroying in (ComponentState + AComponent.ComponentState)), ''Component already destroyed: ''+ Name);
if not Assigned(FFreeNotifies) then FFreeNotifies := TList.Create;
if FFreeNotifies.IndexOf(AComponent) < 0 then
begin
FFreeNotifies.Add(AComponent);
AComponent.FreeNotification(Self);//这是不是出现循环调用吗?
end;
end;
Include(FComponentState, csFreeNotification);
end;
该函数的功能就是把要通知的对象放在FFreeNotifies中,自已删除了就要通知子组件删除,但是添加了也有必要通知别人吗?有什么实际意义?

2楼: 这就叫广播模式,多看看就知道了 如计算机管理软件

3楼: 李维书中的吧,我也看到这里,现在忙得没时间看啊!


忙着看<<神雕>>!

4楼: 应该是观察者模式.
李维书中讲的也不太清楚啊:)

5楼: 问题是不是太简单了
自己顶一下!

6楼: 知道了

库存管理软件版7楼: 多人接受答案了。