面对TCollection,我…… 我快抓狂了。记于此,大家引以为戒。
Borland明显对TCollection的操作粗制滥造!
一、在Object TreeView右键点击TCollection对象,Add Item。受不了他们,他们用的是内部的保护方法既不是InsertItem也不是外部的Add方法。捕获不到Add的信息。而用TCollection的属性编辑器是毫无问题的。
二、TCollection的属性编辑器的删除,根本没有用Delete方法,他仅仅是把Item给Free掉就完事!TCollection里面的FItems根本没有同步删除不说!根本就没有调用Delete方法。而在Object TreeView右键点击TCollection对象,Edit -> Delete,他们用的也是私有方法RemoveItem。
最抓狂的还是我这几天写的连动代码,被我删除全部重写了好几遍。
我以为是我的问题,当我用CodeSite跟踪了许多地方,我才发现,是delphi的问题。
唉…… 我还是自己写组件编辑器吧。
如果大家使用TCollection写组件,最好还是自己写属性编辑器。
唉……