环境:
cb6.0 +windows xp
最近,程序中所有含有 TeeChart控件的窗口,突然之间打不开了,
连续提示3个错误:
1,...."Property callout does not exist"...
2,...."MARKS.CALLOUT.BRUSH.COLOR:Property callout does not exist"...
3,error reading :MARKS.CALLOUT.BRUSH.COLOR:Property callout does not exist
我安装的是TeeChart Pro v7.02 Full Source Code,
之前程序一直是好好的,出错之前,我修改了1个TImage控件读取了gif文件。
结果该控件能正常显示gif文件,
但是所有调用过teechart控件的窗口全打不开了。出错提示如上。
改回读取JPG文件后,又正常了,
但是当我重新粘贴TImage控件后,程序出现了上面的问题。
后来我把代码拿到另外一台主机测试,能正常编译,运行成功!
所以我认为代码不存在问题。
应该是CB环境出了问题,我卸载CB重新安装后,结果还是同意的错误,到时是这么回事呢,
======================================================
后来我花了2天才解决这个问题:
由于代码能在另一台主机上运行,所以先排除代码的问题(该主机TImage控件不能识别gif图片,应该是teechart7.0未安装完全);
我在网上查过,有人说是CB自带的Teechart卸载不完全造成的。
于是:
1.卸载CB重新安装,再安装控件,再调试:失败;
2.拷贝正常运行主机上的CBuilder目录替换本机的该目录:失败;
3.修改builer with runtime packages:失败;
4.下载teechart8.0版本替换teechart7.0,结果出现内存地址访问错误,定位于:ChartA->Title->Font->Color 和 ChartA->Title->Text->Text,我猜应该是控件更新后属性修改吧。
5.又卸载CB重新安装,再安装控件,这次我没有再安装CLX的部分,调试:出现LINK ERROR,找不到teechart8.LIB。
于是我去调试“edit source option”,删除了所有teechar8的相关字段,再运行:成功!
结尾:
由于最后1次安装Teechart时,没有安装CLX的部分(之前也一直安装不成功),又修改程序的BPR.XML,所有我认为出错的原因应该是这2个地方,考虑到网上有人说过我的版本卸载不完全,应该是BPR.XML里调用LIB有误。
======================================================
附TeeChart Pro v7.02 Full Source Code安装办法:
1.卸载CB自带Teechart控件,option->packages,Remove所有带tee开头的控件,完成后关闭cb。
2.安装teechart7.02.运行Recompile.exe,再将生成的compiled目录下的文件拷贝CB以及系统对应目录。
3.搞定!