Windows/MFC

02. MFC 프로그래밍의 기초

Ohjeonghak 2013. 6. 19. 01:35
반응형

▣ MFC

  • MFC의 개념과 특징
    - MFC 는 Microsoft Foundation Class의 약자이다.
    - MFC 라이브러리는 윈도우 프로그래밍을 위한 응용 프로그램 프레임 워크이다.
    - 개발 시간을 단축 시켜 만들 수 있다.
    - 이식성이 좋고, DAO, ODBC와 같은 데이터베이스와 윈도우 소켓과 같은 네트워크 프로그래밍을
      단순화 시킨다.
  • MFC 계층 구조
  • MFC 세부 계층 구조
    1) CObject 클래스
       - MFC의 최상위 클래스이다.

    2) 응용 프로그램 아키텍쳐 클래스
       - CObject의 첫번째 파생 클래스 군이다.

    3) 윈도우 클래스
       - CObject의 두번째 파생 클래스 군이다.

    4) 일반 클래스
       - CObject의 세번째 파생 클래스 군이다.

    5) CObject 클래스로부터 파생되지 않는 클래스
       - CObject 클래스로부터 파생되지 않는 클래스 군이다.


▣ 마법사를 이용하여 응용 프로그램 만들기

  • MFC 응용 프로그램을 이용하여 프로젝트 생성

    * 프로젝트 생성 할 땐 다양한 속성을 개발에 맞게 선택 하여 생성 할 수 있다.

    1) 왼쪽 패널의 트리에서 MFC 프로젝트의 형식을 선택하면 오른쪽 패널에서는 템플릿을 결정하여 생성
        할 수 있다.


    2) 응용 프로그램 종류 설정

- 단일 문서 기반
- 다중 문서 기반
- 대화 상자 기반
- 다중 최상위 문서 기반
- 도큐머트/뷰 아키텍처 지원 옵션
- 리소스 언어 선택








              
3) 복합 지원 문서




- OLE 지원 유무
- OLE 컨테이너 응용 프로그램 생성
- 미니 서버
- 풀 서버
- 컨테이너 / 풀 서버












4) 문서 템플릿 문자열




- 파일 확장명
- 파일 형식 ID
- 주 프레임 캡션
- 문서 형식 이름
- 필터 이름
- 파일의 새 약식 이름
- 파일 형식의 긴 이름








5) 데이터 베이스 지원 설정



- 데이터베이스 지원 유무
- 헤더 파일만
- 파일을 지원하지 않는 데이터베이스 뷰
- 파일을 지원하는 데이터베이스 뷰











6) 사용자 인터페이스 기능 설정



- 주 프레임 스타일

- 자식 프레임 스타일
- 명령 모음












7) 고급 기능 설정





- 고급 기능
- 고급 프레임 창
- 최근 파일 목록의 파일 수










8) 생성된 클래스


















9) 프로젝트 구성 확인





- 솔루션 탐색기
   (단축키 : Ctrl + Alt + L)
- 클래스 뷰

   (단축키 : Ctrl + Shift + C)
- 리소스 뷰
   (단축키 : Ctrl + Shift + E)













▣ MFC 프로젝트의 기본 흐름

  • MFC 응용 프로그램의 실행 흐름

    * 완성된 MFC 프로젝트에서 F11 키를 눌러서 실행 흐름을 분석 해 볼 수 있다.

      - 여기가 WinMain() 함수부이다.

  • MFC 프로젝트의 구성
    - 전체적인 파일 구성

     파일

    설명 

     MFC(filename).sin

     솔루션 파일이다.

     MFC(filename).h

     MFC(filename).cpp

     응용 프로그램 클래스가 정의 되어 있다.
     - 응용 프로그램 클래스란 윈도우 프로그램 그 자체를 의미한다.
     - 응용 프로그램 클래스는 보통 프로젝트 이름과 같은 이름으로 저장되며, 클래스 이름 뒤에는 App가 추가된다.

     MFC(filename)Frm.h
     MFC(filename)Frm.cpp

     메인 프레임 클래스가 정의 되어 있다.
     - 메인 프레임 클래스는 MainFrm.h 파일에 정의되어 있으며, 구현 파일은 MainFrm.cpp이다. 이 파일들은 프로젝트 이름과 상관 없이 고정되어 있다.

     MFC(filename)Doc.h
     MFC(filename)Doc.cpp

     도큐먼트 클래스가 정의 되어 있다.
     - 데이터 관리를 위한 클래스
     - Serialize 루틴 지원

     MFC(filename)View.h
     MFC(filename)View.cpp

     뷰 클래스가 정의 되어 있다.
     - 도큐먼트에 저장된 정보를 사용자에게 보여주는 역할을 한다.
     - 입력과 출력이 명백하게 보여질 수 있도록 처리해 주는 클래스이다.

     MFC(filename).rc

     리소스정의 파일이다.

     MFC(filename).vcproj

     프로젝트 파일이다.



반응형