프로젝트 생성시 옵션설정에 따라,
공통적으로 존재하는 3개의 클래스.
1. App
2. MainFrame
3. View
C#(WinForm)
C(WinAPI)
C++(MFC)
어떤것으로 짜든, windows api를 사용하게 됨
이것이 하드웨어로 연결
CAPP: 전역데이터 함수 관리. 화면 출력과는 크게 관계 없음.
CView: 윈도우의 view영역 관리.
CMainFrame: 그 외 나머지.(예를 들어 상태 표시줄 관리는 이 클래스에서 가능)
CAPP → CMainFrame → Cview 순으로 실행되고, 실제 가장 많이 사용되는 것은 CView이다.
두 개의 클래스를 동시에 상속받고자 할 때
1. C#에서 지원하지 않는 다중상속을 지원한다.
2. 하나씩 상속받은 두 개의 클래스를 생성하고, 또 다른 클래스를 만들어 하나는 상속, 하나는 호출하여 사용한다.
■ MFC의 기본클래스 4개
보이는 클래스-CView, CDocument
보이지 않는 클래스-CAPP, CMainFrame
■ 메시지펌핑
메시지 펌핑(MFC)-스레드를 돌려 계속 돌게하고 데이터가 있을때마다 가져오게 하는 것
(WinAPI에서는 메시지 루프와 같은 기능)
■ MFC에서의 메시지 처리 루틴(다음시간)
ex)
BITMAP파일(정보구조체와 값구조체로 구성)
비트맵파일을 불러오는 함수는 어느 클래스에?
View vs. Document(여러개의 그림파일을 동시에 불러올 수 있음)
■ 같은 기능이라도 어떤 프로그램이냐에 따라 구현되어야 하는 클래스가 다르다.
프로그램의 흐름(flow)에 따라 이벤트 발생지점을 파악하여 적절한 클래스에 함수를 구현해 주어야 한다.
'PROGRAMMING > MFC(C++)' 카테고리의 다른 글
[0406수업] 타 클래스의 데이터/함수 이용하기 (0) | 2011.04.06 |
---|---|
[0405수업] 사각형/문자 출력, CWnd객체 생성 (0) | 2011.04.05 |
[0401수업[ 윈도우 응용프로그램 개발 환경 (0) | 2011.04.01 |
[0331수업] MFC Basic Code (0) | 2011.03.31 |
[0331수업] MFC 개관 (0) | 2011.03.31 |