wxWidgets 在windows下加载图标资源

使用wxWidgets便于支持跨平台的软件,但是在平台底层的差异还是无法封装。比如windows平台下file explorer显示的程序图标是直接从程序中读取的,所以必需使用windows的“.rc”格式资源文件,并编译进项目中才可以显示。如果使用xmp格式或其它格式的图标文件,则只会在程序中运行时才能正常显示窗口中的图标。

 wxIcon()可以支持从windows的资源(.rc)文件中加载图标,但手册中说明不详,网络上现有的说明也比较分散。经过实践,总结如下:

 

使用wxWidgets时,不能直接使用VC资源编辑器编辑.rc文件,而是要手工编写,包含如下内容即可:

 

#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文件打资源编辑器进行编辑,这样会造成文件内容的改变。

 

posted @ 2008-11-13 20:28  easyti  阅读(1078)  评论(0编辑  收藏  举报