在最近的项目中,遇到 了这样一个比较棘手的问题,最后花了一天的时间才解决,现总结一下,以供大家参考!
问题:原来的项目工程在XP系统下用VC6编写的,一切没有问题。但由于现实需要需要在WIN7/XP系统运行,我们把工程转到了VC2010,在WIN7下没有问题。但在XP却出现了一个莫名的问题:就是CTreeCtrl控件的BMP图标不显示,在显示图标的地方全部不显示(为空),经过反复检测,确认代码没有问题(在WIN7系统下没有出现问题)。
其中的显示图标的CTreeCtrl控件代码如下:
.h文件
CTreeCtrl m_Tree;
CImageList m_Img;
.cpp文件
m_Tree.Create (WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS, CRect(0,0,200,400), this, 0x09992);
m_Img.Create(16, 16, ILC_COLOR | ILC_MASK, 1, 1);
CBitmap bmp;
bmp.L

在从VC6移植到VC2010的项目中,CTreeCtrl控件的BMP图标在XP系统下不显示。问题由xptheme.xml文件引起,删除该文件及其资源定义可以解决问题。此文件用于赋予软件XP风格,但在某些情况下可能导致兼容性问题。
最低0.47元/天 解锁文章
2236

被折叠的 条评论
为什么被折叠?



