使用wxWidgets便于支持跨平台的软件,但是在平台底层的差异还是无法封装。比如windows平台下file explorer显示的程序图标是直接从程序中读取的,所以必需使用windows的“.rc”格式资源文件,并编译进项目中才可以显示。如果使用xmp格式或其它格式的图标文件,则只会在程序中运行时才能正常显示窗口中的图标。
wxIcon()可以支持从windows的资源(.rc)文件中加载图标,但手册中说明不详,网络上现有的说明也比较分散。经过实践,总结如下:
使用wxWidgets时,不能直接使用VC资源编辑器编辑.rc文件,而是要手工编写,包含如下内容即可:
1 2 3 4 5 |
#include <wx/msw/wx.rc> //添加此文件,以便加载wxWidgets使用的缺省光标等 sampleIcon ICON "sampleIcon.ico" //第一个图标是windows file explorer缺省显示的图标 sampleBmp ICON "sampleBmp.bmp"//可以使用wxBITMAP( sampleBmp )加载 |
在程序中使用wxIcon icon = wxICON( sampleIcon ); 即可加载此图标。
如何在程序中同时支持在X window下加载XMP格式文件, 请参考wxIcon说明。
注意:不要双击项目中的.rc文件打资源编辑器进行编辑,这样会造成文件内容的改变。
郑重声明:
除特别声明为转载内容外,本站所有内容均为作者原创,谢绝任何单位和个人不经许可的复制和转播!
对于确有转载需要的,请先与作者联系,在获得允许后烦请在转载时保留文章出处。
本文出自Lupin's Blog:http://www.cnzui.com/archives/326
除特别声明为转载内容外,本站所有内容均为作者原创,谢绝任何单位和个人不经许可的复制和转播!
对于确有转载需要的,请先与作者联系,在获得允许后烦请在转载时保留文章出处。
本文出自Lupin's Blog:http://www.cnzui.com/archives/326