我有一个可视组件,需要检测何时删除集合项,以便重新绘制。
TCollection 具有以下受保护的过程:
procedure Notify(Item: TCollectionItem; Action: TCollectionNotification); virtual;
不幸的是,它仅在添加项目时和删除之前调用。我需要知道项目何时被删除。
在内部,TCollection 使用了一个 TList,它也提供了一个 Notify 过程。TList 版本确实包含已删除通知。不幸的是,TList 是私有成员。
如何检测 TCollection 项目何时被删除?