main.h
#include<wx/wx.h>
class MyApp: public wxApp
{
public:
virtual bool OnInit();
};
main.cpp
#include"main.h"
#include"CMainFrame.h"
IMPLEMENT_APP(MyApp)
bool MyApp::OnInit()
{
CMainFrame *MainFrame = new CMainFrame(wxT("My First Program"));
MainFrame->Show(true);
return true;
}
CMainFrame.h
#include<wx/wx.h>
class CMainFrame:public wxFrame
{
public:
CMainFrame(const wxString& title);
};
CMainFrame.cpp
#include"CMainFrame.h"
CMainFrame::CMainFrame(const wxString & title)
: wxFrame(NULL,wxID_ANY,title,wxDefaultPosition,wxSize(640,480))
{
Centre();
}
----------------------------------------------------설명---------------------------------------------------
MyApp 클래스
콘솔 프로그램이나 WinAPI의 GUI프로그램에서의 main이나 WinMain과 비슷한 역활을 한다.
프로그램이 시작할 때(OnInit메소드) 창을 생성하고(CMainFrame선언) 화면에 뜨게한다(MainFrame의 Show메소드)
IMPLEMENT_APP(MyApp)
MyApp클래스를 프로그램이 시작할 때 생성해 달라는 매크로, 이 매크로가 있어야만 MyApp클래스가 처음으로 생성되고, OnInit을 호출하여 창을 보여준다.
CMainFrame클래스에 대한 설명
CMainFrame은 wxFrame이라는 클래스을 상속받는다.
: wxFrame(NULL,wxID_ANY,title,wxDefaultPosition,wxSize(640,480))
CMainFrame의 생성자가 실행될 때 상속된 wxFrame의 생성자도 같이 실행된다.
wxFrame의 생성자는 여러 인자를 같고 있는 데 창을 생성할 때 필요한 정보들이다.
이외에도 더 많은 인수가 있지만, 디폴드 인수가 있어서 신경을 쓰지 않아도 된다.
Centre()
창을 화면 중앙에 배치해주는 함수.
댓글 없음:
댓글 쓰기