D5开发人员指南611员中间有一句:
“如果属性是一个对象,该对象必须是从TPersistent或其派生类继承下来的,这样对象的公开属性才能够被流操作并显示在Object Inspector中”这里所说的‘流操作’是指什么?一直不明白。
“如果属性是一个对象,该对象必须是从TPersistent或其派生类继承下来的,这样对象的公开属性才能够被流操作并显示在Object Inspector中”这里所说的‘流操作’是指什么?一直不明白。
解决方案 »
- DELPHI 串口取JPEG格式的图片
- 有关TDBGridEh的一个单元格内容复制的问题?还有TDBGridEh的内容过滤问题?
- 关于音频播放的问题
- 有关ehlib调试
- CSDN 终于可以上啦 乐啊 !!!!!散分!!!! 不知道怎么给200分 我发两次贴
- 2.小弟初学,迷惑2,请高手帮助。
- 如何让程序可以使用运行参数?
- 一个打印控件!!!!在线讨论!!!!!!马上给分!!!!
- 向高手请教!delphi5中怎样申明动态链接库(*.dll)然后使用它的函数呢??
- DELPHI5.0用ADOSTOREDPROC调用存储过程时出现ADOSTOREDPROC.COMMANDTEXT不能返回结果集?
- 紧急求救,关于打包的问题(在线等待)
- 如何用事务管理将大批量的数据从客户端上传到服务器端?
前些天看过一猩猩贴的帖子上面有讲,你找找看吧,不过偶看的不是太懂keke~~~
---------------------------------------------------------------------------------
一个类的属性的可见性分为公布的,私有的,公开的等等几种,其中只有公布的属性才具有RTTI信息,也就是说只有公布的属性Delphi的编译器才会为它另外存储表明其本身类型的一些信息。而只有有了这些信息,我们在程序运行期间才可以通过我们已经写好的代码来动态的对其类型等信息进行判断(可能这些信息是我们需要的)。但是,不是说任何类型都可以做公布属性的类型,因为Delphi中不是任何类都可以让编译器为其保存额外的类型信息的。只有TPersistent的派生类才可以,因为TPersistent类是在$M+的条件下进行编译的($M+条件要求编译器保存该类的类型信息),所以从TPersistent类派生出来的类都可以让编译器为其保存类型信息,这样也就可以做公布属性的类型了。而Delphi IDE中的Object Inspector里面显示的全部都是公布的属性(属性和事件,事件本身也是属性!)。至于流操作,个人认为就是可以将当前窗体布局信息保存到DFM文件中的过程。而TPersistent类本身就支持这种操作。所以一个属性的类型必须也是TPersistent及其派生类才可以被进行这种操作To 楼主 以前看的东西记不太清了,完全凭印象了,错误之处请指正!!!!---------------------------------------------------------------------------------