wxWidgets

wxWidgets

Code::Blocks環境

Code::Blocks下載:

Code::Blocks使用:php

codeblocks-16.01mingw-setup.exehtml

它的gcc版本爲4.9.2,也可在設置中對其進行更改git

## wxMSW-3.1.0_gcc492下載: ##

Code::Blocks配置:

解壓wxMSW-3.1.0_gcc492TDM_Dev.7z與wxWidgets-3.1.0-headers.7z到同一目錄:X:\wxMSW-3.1.0_gcc492TDMgithub

在環境變量裏添加一個wxWidgets根目錄環境變量,新增的用戶變量命名爲wxwin,值爲X:\wxMSW-3.1.0_gcc492TDMwindows

打開Code::Blocks,選擇菜單Settings->Global Variables…,在設置default下新創建一個wx變量,在Build-in fields:下,base中填入「${wxwin}」(wxwin是剛纔設置好的一個變量),include中填入「${wxwin}\include」,lib中填入「${wxwin}\lib」工具

新建項目:

創建項目

創建項目的過程

經過菜單「File」->「New」->「Project…」,選擇「Empty project」建一個項目。ui

點擊菜單File->New->File...爲項目新建一個源程序文件,main.cpp:.net

#include <wx/wx.h>
class Simple : public wxFrame
{
    public:
    Simple(const wxString & title);
};

Simple::Simple(const wxString & title)
: wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxSize(250, 150))
{
    Centre();
}

class MyApp : public wxApp
{
    public:
    virtual bool OnInit();
};

IMPLEMENT_APP(MyApp)

bool MyApp::OnInit()
{
    Simple * simple = new Simple(wxT("Simple"));
    simple->Show(true);
    return true;
}

選菜單Project->Build options...,在選項卡Search directories中,設置Compiler。經過「Add」增長目錄X:\wxMSW-3.1.0_gcc492TDM\include和X:\wxMSW-3.1.0_gcc492TDM\lib\gcc_dll\mswud,最好include在上mswud在下。(debug版用mswud,release版用mswu)debug

選菜單Project->Build options...,在選項卡Linker settings中,須要加入要鏈接的「目標文件」。如圖所示,經過Add按鈕加入X:\wxMSW-3.1.0_gcc492TDM\lib\gcc_dll文件夾中的全部.a文件設計

此時編譯便可經過。

利用Code::Blocks的嚮導創建

使用嚮導建一個「wxWidgets project」項目。

  • GUI設計工具和程序類型,用wxSmith和Dialog based。若是設置了「Code::Blocks配置」,wxWidgets'location直接填入「$(#wx)」就能夠了,不然設置爲X:\wxMSW-3.1.0_gcc492TDM目錄。

  • wxWidgets Library Settings選擇Enable unicode

  • 選擇Configure Advanced Options

  • 選擇Use _WXDEBUG_ and Debug wxWidgets lib

  • 選擇GUI Mode Application

生成的程序源碼:

wxTest3.1.0.rar

程序運行:

程序運行時須要一些dll,到wxMSW-3.1.0_gcc492TDM_ReleaseDLL.7z中尋找,放到程序目錄便可啓動。

VS2010環境

wxMSW-3.1.0_vc100下載:

項目

把wxMSW-3.1.0_vc100_Dev.7z與wxWidgets-3.1.0-headers.7z解壓到 X:\wxMSW-3.1.0_vc100_Dev

新建win32項目 windows應用程序 空項目

附加包含目錄

  • X:\wxMSW-3.1.0_vc100_Dev\include
  • X:\wxMSW-3.1.0_vc100_Dev\lib\vc_lib\mswud(debug)
  • X:\wxMSW-3.1.0_vc100_Dev\lib\vc_lib\mswu(release)

添加附加依賴項:

wxbase31ud_net.lib
wxmsw31ud_html.lib
wxbase31ud_xml.lib
wxmsw31ud_adv.lib
wxmsw31ud_aui.lib
wxmsw31ud_gl.lib
wxmsw31ud_media.lib
wxmsw31ud_propgrid.lib
wxmsw31ud_qa.lib
wxmsw31ud_ribbon.lib
wxmsw31ud_richtext.lib
wxmsw31ud_stc.lib
wxmsw31ud_xrc.lib
wxscintillad.lib
wxmsw31ud_core.lib
wxbase31ud.lib
wxtiffd.lib
wxjpegd.lib
wxpngd.lib
wxzlibd.lib
wxexpatd.lib
winmm.lib
comctl32.lib
rpcrt4.lib
wsock32.lib
odbc32.lib

頭文件:

#include <wx/wx.h>
class wxMyApp:public wxApp
{
public:
    virtual bool OnInit();
};
class wxMyFrame:public wxFrame
{
public:
    wxMyFrame(const wxString& title);
};

源文件:

#include "頭文件.h"
bool wxMyApp::OnInit()
{
    wxMyFrame *pMyFrame=new wxMyFrame(_("myframe"));
    pMyFrame->Show(TRUE);
    return TRUE;
}
wxMyFrame::wxMyFrame(const wxString& title):wxFrame(NULL,NULL,title)
{

}
DECLARE_APP(wxMyApp);
IMPLEMENT_APP(wxMyApp);

參考:

相關文章
相關標籤/搜索