1、 登陆http://www.wxwidgets.org/,下载wxMSW-2.9.2-Setup.exe
2、 运行wxMSW-2.9.2-Setup.exe,将wxWidgets安装到D:\wxWidgets-2.9.2
3、 安装完毕后还需要进行编译,要求有IDE,我用的是MS Visual Studio 2008
4、 进入D:\wxWidgets-2.9.2\build\msw,运用MS Visual Studio 2008打开wx_vc9.sln,然后点击Build->Configuration Manager,弹出窗口,选择Active solution configuration为Unicode Debug或是别的,如果需要其中多个solution configuration,可以依次选中,然后依次按下F7键Build solution,我分别选中了Unicode Debug和Unicode Release,编译完成后会在D:\wxWidgets-2.9.2\lib下生成vc_lib文件夹,其中包括生成的相应的.lib等文件和mswud文件夹。到此,wxWidgets安装完毕。
【注意】wxbase29ud.lib中的ud代表Unicode Dug版本,相应地wxbase28u.lib中的u代表的是UnicodeRelease版本。Unicode是统一的字符编码标准,采用双字节对字符进行编码,支持多语言,有利于国际化,处理更方便,所以选择编译成Unicode版本。
本例演示了一个最小的wxWidgets GUI程序,使用的wxWidgets类库为2.9.2
1. 环境设置:
在环境变量中定义 wxWin, 其值为wxwidgets的安装路径。我的wxWidgets的安装路径为d:\opt\wxWidgets-2.9.2.所以:
$(wxWin)=d:\opt\wxWidgets-2.9.2
在VS2008中,工具->选项->项目和解决方案->VC++目录
在 【平台】=Win32 【显示一下目录内容】=包含文件 中添加
$(wxWin)\include
2. 代码编写
在VS2008中创建Windows应用程序,选择空项目即可
新建H文件:simple_window.h
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
#ifndef SIMPLE_WINDOW_H
#define SIMPLE_WINDOW_H
class myApp : public wxApp
{
public:
virtual bool OnInit();
};
class myFrame : public wxFrame
{
public:
myFrame(const wxString title);
};
#endif
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
新建CPP文件: simple_window.cpp
//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
#include"wx/wx.h"
#include"simple_window.h"
DECLARE_APP(myApp);
IMPLEMENT_APP(myApp);
bool myApp::OnInit()
{
myFrame* p_myFrame = new myFrame(wxT("WINDOW"));
p_myFrame->Show(true);
return true;
}
myFrame::myFrame(const wxString title):wxFrame(NULL,wxID_ANY,title)
{
}
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
3. 项目设定
右键单击项目->属性->C/C++->常规
【附加包含目录】 = "$(wxWin)\lib\vc_lib\mswud"
这里是unicode的Debug版本,如果是:
Unicode Release版本:"$(wxWin)\lib\vc_lib\mswu"
ANSI Debug版本:"$(wxWin)\lib\vc_lib\mswd"
ANSI Release版本:"$(wxWin)\lib\vc_lib\msw"
项目属性->连接器->常规
【附加库目录】= "$(wxWin)\lib\vc_lib\"
项目属性->连接器->输入
【附加依赖项】=
wxmsw29ud_core.lib
wxbase29ud.lib
wxtiffd.lib
wxjpegd.lib
wxpngd.lib
wxzlibd.lib
wxregexud.lib
wxexpatd.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
odbc32.lib
这里是unicode的Debug版本,如果是:
Unicode Release版本:
wxmsw29u_core.lib
wxbase29u.lib
wxtiff.lib
wxjpeg.lib
wxpng.lib
wxzlib.lib
wxregexu.lib
wxexpat.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
odbc32.lib
ANSI Debug版本:
wxmsw29d_core.lib
wxbase29d.lib
wxtiffd.lib
wxjpegd.lib
wxpngd.lib
wxzlibd.lib
wxregexd.lib
wxexpatd.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
odbc32.lib
ANSI Release版本:
wxmsw29_core.lib
wxbase29.lib
wxtiff.lib
wxjpeg.lib
wxpng.lib
wxzlib.lib
wxregex.lib
wxexpat.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
odbc32.lib