2014-01-18 32 views
1

1)我已經安裝了gtk2與端口(端口安裝gtk2)
2)我編譯我的代碼(使用wx)成功。wxWidgets不顯示窗口下的Macbook Air(操作系統)

當我執行我的二進制文件時,它不像我預期的那樣工作。沒有窗口顯示在那裏。

下面是我簡單的演示代碼:

#include <wx/wx.h> 

enum 
{ 
    ID_FRAME, 
    ID_BTN, 
}; 

class HelloWorldApp : public wxApp 
{ 
public: 
    virtual bool OnInit(); 
private: 
    wxButton* button; 
}; 

IMPLEMENT_APP(HelloWorldApp) 

bool HelloWorldApp::OnInit() 
{ 
    wxFrame *frame = new wxFrame((wxFrame*) NULL, ID_FRAME, _T("Hello wxWidgets World")); 
    frame->CreateStatusBar(); 
    frame->SetStatusText(_T("Hello World")); 
    button = new wxButton((wxFrame *)frame, ID_BTN, _T("123")); 
    frame->Show(TRUE); 
    SetTopWindow(frame); 
    return true; 
} 

回答

1

首先,你真的不應該使用wxGTK下OS X,除非你真的知道自己在做什麼,很正常的事情做的是使用wxOSX。

其次,在OS X應用程序下必須編譯爲捆綁包,例如查看任何wxWidgets示例。

+0

感謝您的回答。我只想學習wxWidgets,而且我很懶,不想在我的筆記本電腦下添加虛擬機。我會嘗試使用虛擬機:) – oyjh

+0

這裏有一些混淆。您絕對不需要虛擬機來使用wxWidgets,本地端口適用於所有主要平臺。然而,你的問題似乎表明你在OS X下嘗試使用wxGTK(Unix/Linux版本),這不是最簡單的事情。如果您使用Linux,請使用wxGTK。如果您使用OS X,請使用wxOSX/Cocoa。 –

相關問題