如题。

解决方案 »

  1.   

    当控件被移除时,用 FreeNotification 方法触发消息,响应Notification事件。在Notification事件中处理控件被移除的信息!
      

  2.   

    procedure FreeNotification(AComponent: TComponent);
    假设Comp1.FreeNotification(Com2),那么Comp1被销毁(如嗲用Comp1.Free,Comp1.Destroy,FreeAndNil(Comp1)等)时会自动调用Com2.Notification方法,通知Com2:Com1已经被销毁,Com2应该做相应处理。比如Dataset是Com2,那么他对应的DataSource(Com1)销毁时,应该通知Dataset。在Com2中覆盖Notification方法做相应处理。
    注:如果Comp1和Comp2的拥有者(Owner)是相同的话,这个通知过程是自动处理的,不需要调用Comp1.FreeNotification(Com2)。—————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    —————————————————————————————————