Presentation is loading. Please wait.

Presentation is loading. Please wait.

MFC 응용 프로그램 구조 두 개의 윈도우로 구성된 일반적인 MFC 프로그램 프레임 윈도우

Similar presentations


Presentation on theme: "MFC 응용 프로그램 구조 두 개의 윈도우로 구성된 일반적인 MFC 프로그램 프레임 윈도우"— Presentation transcript:

1 MFC 응용 프로그램 구조 두 개의 윈도우로 구성된 일반적인 MFC 프로그램 프레임 윈도우
뷰: 프레임 윈도우에 종속하며 클라이언트 영역에 위치

2 MFC 응용 프로그램 생성 (1) 프로젝트 종류 선택

3 MFC 응용 프로그램 생성 (2) MFC 응용프로그램 마법사 1단계

4 MFC 응용 프로그램 생성 (3) MFC 응용프로그램 마법사 2단계

5 MFC 응용 프로그램 생성 (4) MFC 응용프로그램 마법사 3단계

6 MFC 응용 프로그램 생성 (5) MFC 응용프로그램 마법사 4단계

7 MFC 응용 프로그램 생성 (6) MFC 응용프로그램 마법사 5단계

8 MFC 응용 프로그램 생성 (7)

9 주요 클래스 응용 프로그램 클래스 (CSimpleApp) 프레임 윈도우 클래스 (CMainFrame) 뷰 클래스
(CChildView) 프레임 윈도우 생성 메시지 루프 제공 프레임 윈도우 기능 제공 뷰 생성 뷰 기능 제공

10 주요 클래스 기능 클래스별 핵심 사항 요약 클래스 종류 베이스 클래스 이름 핵심 함수 - 주 역할 응용 프로그램 클래스
CWinApp InitInstance() - 프레임 윈도우를 생성한다. Run() - 메시지 루프를 제공한다. 프레임 윈도우 CFrameWnd OnCreate() - 뷰를 생성한다. 뷰 클래스 CWnd OnPaint() - 화면에 출력한다.

11 생성된 코드 (Simple.h, Simple.cpp)
class CSimpleApp : public CWinApp { public: CSimpleApp(); virtual BOOL InitInstance(); afx_msg void OnAppAbout(); DECLARE_MESSAGE_MAP() }; // Simple.cpp CSimpleApp theApp; BOOL CSimpleApp::InitInstance() { CWinApp::InitInstance(); CMainFrame* pFrame = new CMainFrame; if (!pFrame) return FALSE; m_pMainWnd = pFrame; return TRUE; }

12 생성된 코드 (MainFrm.h, MainFrm.cpp)
class CMainFrame : public CFrameWnd { protected: CStatusBar m_wndStatusBar; // 컨트롤 모음이 포함된 멤버입니다. CToolBar m_wndToolBar; CChildView m_wndView; // 생성된 메시지 맵 함수 afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnSetFocus(CWnd *pOldWnd); }; // MainFrm.cpp int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { // 프레임의 클라이언트 영역을 차지하는 뷰를 만듭니다. if (!m_wndView.Create(NULL, NULL, AFX_WS_DEFAULT_VIEW, CRect(0, 0, 0, 0), this, AFX_IDW_PANE_FIRST, NULL)) { TRACE0("뷰 창을 만들지 못했습니다.\n"); return -1; } return 0; void CMainFrame::OnSetFocus(CWnd *) { // 뷰 창으로 포커스를 이동합니다. m_wndView.SetFocus();

13 생성된 코드 (ChildView.h, ChildView.cpp)
class CChildView : public CWnd { public: CChildView(); virtual ~CChildView(); protected: virtual BOOL PreCreateWindow(CREATESTRUCT& cs); // 생성된 메시지 맵 함수 afx_msg void OnPaint(); DECLARE_MESSAGE_MAP() }; // ChildView.cpp void CChildView::OnPaint() { CPaintDC dc(this); // 그리기를 위한 디바이스 컨텍스트 // TODO: 여기에 메시지 처리기 코드를 추가합니다. dc.TextOutW(100, 100, CString("안녕하세요.")); // 그리기 메시지에 대해서는 CWnd::OnPaint()를 호출하지 마십시오. }

14 Simple 실행 화면


Download ppt "MFC 응용 프로그램 구조 두 개의 윈도우로 구성된 일반적인 MFC 프로그램 프레임 윈도우"

Similar presentations


Ads by Google