아주 기초적인 프레임 생성 코드! wxFromBuilder 등에서 기본적인 배치및 이벤트 헨들러 지정을 해도 app 관련 코드는 생성해 주지 않으므로 일단 기본 코드가 있으면 좋다!...
#include "wx/wx.h" ////////////////////////////////////////////////////////////////////////// // wxWidgets 최신 버전 다운로드 // http://www.wxwidgets.org/downloads/ // Current Stable Release: 2.9.3 // Previous Stable Release: 2.8.12 // * 다운로드 페이지에는 2.9.3 이 최신버전이 아니지만 2.9.3이 최신버전이 맞음. // 다음 버전은 2.9.4 일것이고 다음은 2.9.5 혹은 3.0 으로 된것이라고 함. // 3.0 에서는 윈도우 메트로 ui 도 지원할지도 모르겠음.(이건 추측) ////////////////////////////////////////////////////////////////////////// // 컴파일 할때 설정해 줘야 하는것들 (비주얼 스튜디오 기준) // * 추가 include 폴더 지정. // [wxWidget폴더]/include // [wxWidget폴더]/include/msvc // * 추가 library 폴더 지정. // [wxWidget폴더]/lib/vc_lib <- static lib 로 링크하는 경우. // [wxWidget폴더]/lib/vc_dll <- dynamic dll 로 링크하는 경우. (해당 dll 을 실행파일 경로에 복사해줘야함) ////////////////////////////////////////////////////////////////////////// // BaseFrame class CBaseFrame : public wxFrame { public: CBaseFrame(const wxString& title) : wxFrame(NULL, wxID_ANY, title) { /* 자식 윈도우의 이벤트 처리는 아래와 같은 형태로 직접 연결. // Connect Events mGridSizeCombo->Connect(wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler(NGCEditorFrame::OnSelected), NULL, this); mGridSizeCombo->Connect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(NGCEditorFrame::OnEnter), NULL, this); */ } virtual ~CBaseFrame() { /* 자식 윈도우 이벤트 연결이 되었다면 윈도우 삭제시 연결 해제 해주자. // Disconnect Events mGridSizeCombo->Disconnect(wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler(NGCEditorFrame::OnSelected), NULL, this); mGridSizeCombo->Disconnect(wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler(NGCEditorFrame::OnEnter), NULL, this); */ } void OnSize(wxSizeEvent& event) { wxFrame::OnSize(event); } DECLARE_EVENT_TABLE() }; // CBaseFrame 이벤트 헨들러 지정 BEGIN_EVENT_TABLE(CBaseFrame, wxFrame) EVT_SIZE(CBaseFrame::OnSize) END_EVENT_TABLE() ////////////////////////////////////////////////////////////////////////// // BaseApp class CBaseApp : public wxApp { public: CBaseApp() : pFrame(0) {} virtual ~CBaseApp() {} bool OnInit() { if (!wxApp::OnInit()) return false; pFrame = new CBaseFrame(wxT("기본윈도우")); pFrame->SetClientSize(640, 480); pFrame->Center(); pFrame->Show(); SetTopWindow(pFrame); return true; } int OnRun() { return wxApp::OnRun(); } int OnExit() { return wxApp::OnExit(); } private: CBaseFrame* pFrame; }; // CBaseApp 구현부 IMPLEMENT_APP(CBaseApp)
'프로그래밍 > 조각코드' 카테고리의 다른 글
[C#] 위임과 상속 연습코드~ (0) | 2012.05.03 |
---|---|
[C#] 해당 경로에 있는 파일목록 출력.. (0) | 2012.05.03 |
[C#] 위임이란? (0) | 2012.05.03 |
Windows API GetLastError 코드를 문자열로 출력하기 (0) | 2012.04.04 |
빌드 버전 생성 임시코드 (0) | 2012.02.29 |