Subject:
又是TntFrame惹的祸,改名出错
[Print This Page]
Author:
gaoyanan
Time:
2010-9-26 16:49
Subject:
又是TntFrame惹的祸,改名出错
错误模块:组件名属性编辑器
CnWizards版本:0.9.6.569
错误现象:对于TntFrame,以及重载对象,修改组件名称时,出现“Invalid class typecast.”错误。
组件来源:TMS Unicode Component Pack v1.7.0.3
很郁闷,上次是无法在窗体上引用TntFrame,这次是改名错,难道大家不用TntFrame?或者认为别人一定要从TFrame继承?
请修正 TFrame ---》 TCustomFrame
Author:
Passion
Time:
2010-9-26 18:48
请问复现的具体步骤?我们好查一下。
Author:
gaoyanan
Time:
2010-9-26 20:42
1.安装TMS Unicode Component Pack或者TNTWare组件包。
2.File --》New ---》 Other...,选择“TntFrame(Unicode)”
3.在object Inspector栏中双击“Name”属性,或者点击该属性右侧的“...”。
此时,该问题出现。当然,可以直接修改该属性。怀疑“组件名属性编辑器”代码中直接判断TFrame 对象,而不是TCustomFrame。
因为TntFrame是从TCustomFrame继承的,而我们一般情况下是从TFrame 继承。
PS:TNTWare是一个免费的unicode组件包,后来卖给了TMS ,两者核心基本一致。
Author:
gaoyanan
Time:
2010-9-26 20:45
这个问题是在一次修改二次继承的框架NAME属性时发现的,一开始还以为自己的问题,因为我手工修改了frm文件中一些对象的类。后来发现更换计算机并重新建立新项目,该问题依旧。
抱歉,没下载debug版本,这次没去拜读源代码。
Author:
Passion
Time:
2010-9-27 20:13
非常感谢报告。经过查证,确实是我们对TCusomFrame判断的一处失误。现已改正。下一版本将集成此修改。
Author:
Passion
Time:
2010-9-27 23:03
烦请下载最新的每日构建版0.9.7.590.
http://www.cnpack.org/downbuilds.php
Welcome to CnPack Forum (http://bbs.cnpack.org/)
Powered by Discuz! 5.0.0