vs2013 搭建 wxWidgets环境

一、安装

前往官网下载最新wxWidgets 3.0.0。

https://sourceforge.net/projects/wxwindows/files/3.0.0/wxMSW-3.0.0-Setup.exe/download

下载完默认安装即可,可修改安装路径。

二、编译

打开安装目录wxWidgets-3.0.0在build\msw下找到wx.dsw。

用VS2013打开wx.dsw,等待工程从VC6到VS2013的转换完成。

解决方案结构如下图所示。


右击解决方案,点击批生成,勾选所有Debug和Release(可根据需要选择),点击生成进行编译。


此时,wxWidgets-3.0.0\lib\vc_lib目录如下所示,已生成所需库文件,其中u表示Release版本,ud表示Debug版本。


三、配置

新建Win32控制台应用程序,应用程序类型勾选Windows应用程序或控制台应用程序。

新建源文件test.cc,粘贴以下代码。

[cpp]  view plain copy
  1. // wxWidgets "Hello world" Program  
  2. // For compilers that support precompilation, includes "wx/wx.h".  
  3. #include <wx/wxprec.h>  
  4. #ifndef WX_PRECOMP  
  5. #include <wx/wx.h>  
  6. #endif  
  7. class MyApp : public wxApp  
  8. {  
  9. public:  
  10.     virtual bool OnInit();  
  11. };  
  12. class MyFrame : public wxFrame  
  13. {  
  14. public:  
  15.     MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size);  
  16. private:  
  17.     void OnHello(wxCommandEvent& event);  
  18.     void OnExit(wxCommandEvent& event);  
  19.     void OnAbout(wxCommandEvent& event);  
  20.     wxDECLARE_EVENT_TABLE();  
  21. };  
  22. enum  
  23. {  
  24.     ID_Hello = 1  
  25. };  
  26. wxBEGIN_EVENT_TABLE(MyFrame, wxFrame)  
  27. EVT_MENU(ID_Hello, MyFrame::OnHello)  
  28. EVT_MENU(wxID_EXIT, MyFrame::OnExit)  
  29. EVT_MENU(wxID_ABOUT, MyFrame::OnAbout)  
  30. wxEND_EVENT_TABLE()  
  31. wxIMPLEMENT_APP(MyApp);  
  32. bool MyApp::OnInit()  
  33. {  
  34.     //MyFrame *frame = new MyFrame("Hello World", wxPoint(50, 50), wxSize(450, 340));  
  35.     MyFrame *frame = new MyFrame("Hello World", wxDefaultPosition, wxDefaultSize);  
  36.     frame->Show(true);  
  37.     return true;  
  38. }  
  39. MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)  
  40. : wxFrame(NULL, wxID_ANY, title, pos, size)  
  41. {  
  42.     wxMenu *menuFile = new wxMenu;  
  43.     menuFile->Append(ID_Hello, "&Hello...\tCtrl-H",  
  44.         "Help string shown in status bar for this menu item");  
  45.     menuFile->AppendSeparator();  
  46.     menuFile->Append(wxID_EXIT);  
  47.     wxMenu *menuHelp = new wxMenu;  
  48.     menuHelp->Append(wxID_ABOUT);  
  49.     wxMenuBar *menuBar = new wxMenuBar;  
  50.     menuBar->Append(menuFile, "&File");  
  51.     menuBar->Append(menuHelp, "&Help");  
  52.     SetMenuBar(menuBar);  
  53.     CreateStatusBar();  
  54.     SetStatusText("Welcome to wxWidgets!");  
  55. }  
  56. void MyFrame::OnExit(wxCommandEvent& event)  
  57. {  
  58.     Close(true);  
  59. }  
  60. void MyFrame::OnAbout(wxCommandEvent& event)  
  61. {  
  62.     wxMessageBox("This is a wxWidgets' Hello world sample",  
  63.         "About Hello World", wxOK | wxICON_INFORMATION);  
  64. }  
  65. void MyFrame::OnHello(wxCommandEvent& event)  
  66. {  
  67.     wxLogMessage("Hello world from wxWidgets!");  
  68. }  

1、 包含目录

右击项目,打开项目属性页,配置一项选择所有配置

配置属性->C/C++->常规->附加包含目录 中添加:

[html]  view plain copy
  1. C:\wxWidgets-3.0.0\include  
  2. C:\wxWidgets-3.0.0\lib\vc_lib\mswu  

2、 库目录

配置属性->链接器->常规->附加库目录 中添加:

[html]  view plain copy
  1. C:\wxWidgets-3.0.0\lib\vc_lib  

3、 MFC的使用

配置属性->MFC的使用:使用标准 Windows 库

4、 依赖项

配置属性->链接器->输入->附加依赖项 按照如下规则添加:

A、 配置一项改为Release

[html]  view plain copy
  1. wxbase30u.lib  
  2. wxbase30u_net.lib  
  3. wxbase30u_xml.lib  
  4. wxexpat.lib  
  5. wxjpeg.lib  
  6. wxmsw30u_adv.lib  
  7. wxmsw30u_aui.lib  
  8. wxmsw30u_core.lib  
  9. wxmsw30u_gl.lib  
  10. wxmsw30u_html.lib  
  11. wxmsw30u_media.lib  
  12. wxmsw30u_propgrid.lib  
  13. wxmsw30u_qa.lib  
  14. wxmsw30u_ribbon.lib  
  15. wxmsw30u_richtext.lib  
  16. wxmsw30u_stc.lib  
  17. wxmsw30u_xrc.lib  
  18. wxpng.lib  
  19. wxregexu.lib  
  20. wxscintilla.lib  
  21. wxtiff.lib  
  22. wxzlib.lib  
  23. comctl32.lib  
  24. rpcrt4.lib  
B、 配置一项改为Debug 
[html]  view plain copy
  1. wxbase30ud_net.lib  
  2. wxmsw30ud_html.lib  
  3. wxbase30ud_xml.lib  
  4. wxmsw30ud_adv.lib  
  5. wxmsw30ud_aui.lib  
  6. wxmsw30ud_gl.lib  
  7. wxmsw30ud_media.lib  
  8. wxmsw30ud_propgrid.lib  
  9. wxmsw30ud_qa.lib  
  10. wxmsw30ud_ribbon.lib  
  11. wxmsw30ud_richtext.lib  
  12. wxmsw30ud_stc.lib  
  13. wxmsw30ud_xrc.lib  
  14. wxscintillad.lib  
  15. wxmsw30ud_core.lib  
  16. wxbase30ud.lib  
  17. wxtiffd.lib  
  18. wxjpegd.lib  
  19. wxpngd.lib  
  20. wxzlibd.lib  
  21. wxexpatd.lib  
  22. winmm.lib  
  23. comctl32.lib  
  24. rpcrt4.lib  
  25. wsock32.lib  
  26. odbc32.lib  

5、 预处理器定义

配置一项改为Debug

配置属性->C/C++->预处理器->预处理器定义 中添加:

[html]  view plain copy
  1. __WXMSW__  
  2. __WXDEBUG__  
6、 保存后即可编译

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值