LAB/C++

MFC 기초

it-lab-0130 2024. 12. 26. 15:21

 

 
MFC 란?

- Microsoft가 제공하는 C++ 라이브러리로, Windows API 호출을 쉽게 하기 위한 클래스를 제공

- MFC는 Windows 메시지 기반 구조를 사용하며, 메시지를 처리하는 클래스를 제공

 

이번 프로젝트에서 MFC 어플리케이션 종류에 단일문서 / 여러문서/ 대화상자/ 여러최상위문서가 있는데

저희는 대화상자기반으로 프로젝트를 진행하기로

 

** 대화상자 기반 MFC : 대화 상자는 기본적으로 팝업 창 형태로 제공되며, 사용자와 상호작용할 수 있는 컨트롤(버튼, 텍스트박스 등)이 포함된 창

** CDialog 클래스를 기반으로 작성되며, 대화 상자가 프로그램의 중심 역할

 

[MFC 솔루션 탐색기]

- 리소스 파일 : 애플리케이션의 UI 요소(대화 상자, 메뉴, 아이콘, 문자열, 비트맵 등)를 정의

즉, UI를 디자인

 

- 소스 파일 : 프로그램의 동작 로직과 이벤트 핸들링 코드를 작성

애플리케이션 클래스(MFC_Test1.cpp), 대화 상자 클래스(MFC_Test1Dlg.cpp) 등의 구현 부분이 포함

** MFC_Test1.cpp : 애플리케이션 진입점과 초기화를 담당

** MFC_Test1Dlg.cpp : 대화 상자 클래스의 구현 파일로, 버튼 클릭 등의 이벤트 핸들러 코드가 포함

 

- 헤더 파일 : 클래스 선언, 상수 정의, 외부 리소스 참조를 포함

다른 소스 파일에서 해당 클래스와 변수를 참조할 수 있도록 선언부를 제공

** MFC_Test1.h : 어플리케이션 클래스(MFC_TestAPP)선언

** MFC_Test1Dlg.h : 대화상자 클래스 (MFC_Test1Dlg)선언 및 대화 상자의 컨트롤 변수, 메시지 핸들러 함수 선언

 

파일 간의 연관성

1. 리소스 파일과 헤더 파일 : Resource.rc 파일은 Resource.h 파일에 정의된 리소스 ID를 참조

2. 소스 파일과 헤더 파일 : MFC_Test1Dlg.cpp는 MFC_Test1Dlg.h를 포함하여 대화 상자 클래스의 선언부를 사용

3. 소스 파일과 리소스 파일 : 대화 상자 클래스에서 리소스 ID(예: IDD_DIALOG1)를 참조하여 대화 상자를 로드