Share via


MFC 애플리케이션을 빌드하는 작업 시퀀스

다음 표에서는 MFC 애플리케이션을 개발할 때 일반적으로 따를 수 있는 일반적인 순서를 설명합니다.

프레임워크를 사용하여 애플리케이션 빌드 시퀀스

Task 너 해 프레임워크는
기본 애플리케이션을 만듭니다. MFC 애플리케이션 마법사실행합니다. 옵션 페이지에서 원하는 옵션을 지정합니다. 옵션에는 애플리케이션을 COM 구성 요소, 컨테이너 또는 둘 다로 만드는 것이 포함되며, Automation 추가; 및 애플리케이션 데이터베이스를 인식하게 합니다. MFC 애플리케이션 마법사는 애플리케이션, 문서, 보기 및 프레임 창에 대한 원본 파일을 포함하여 기본 애플리케이션에 대한 파일을 만듭니다. 리소스 파일; 프로젝트 파일; 및 기타 모든 사양에 맞게 조정됩니다.
사용자 고유의 코드 줄을 추가하지 않고 프레임워크 및 MFC 애플리케이션 마법사에서 제공하는 내용을 확인합니다. 기본 애플리케이션을 빌드하고 Visual C++에서 실행합니다. 실행 중인 기본 애플리케이션은 프레임워크에서 많은 표준 파일, 편집, 보기도움말 메뉴 명령을 파생합니다. MDI 애플리케이션의 경우 완벽하게 작동하는 Windows 메뉴도 얻을 수 있으며 프레임워크는 MDI 자식 창의 생성, 정렬 및 소멸을 관리합니다.
애플리케이션의 사용자 인터페이스를 생성합니다. Visual C++ 리소스 편집 기를 사용하여 애플리케이션의 사용자 인터페이스를 시각적으로 편집합니다.

- 메뉴를 만듭니다.
- 액셀러레이터를 정의합니다.
- 대화 상자를 만듭니다.
- 비트맵, 아이콘 및 커서를 만들고 편집합니다.
- MFC 애플리케이션 마법사에서 만든 도구 모음을 편집합니다.
- 다른 리소스를 만들고 편집합니다.

대화 상자 편집기에서 대화 상자를 테스트할 수도 있습니다.
MFC 애플리케이션 마법사에서 만든 기본 리소스 파일은 필요한 많은 리소스를 제공합니다. Visual C++를 사용하면 기존 리소스를 편집하고 새 리소스를 쉽고 시각적으로 추가할 수 있습니다.
메뉴를 처리기 함수에 매핑합니다. 클래스 뷰의 속성 창에 있는 이벤트 단추(또는 클래스 마법사명령)를 사용하여 메뉴와 액셀러레이터를 코드의 처리기 함수에 연결합니다. 이러한 도구는 지정한 원본 파일에 메시지 맵 항목 및 빈 함수 템플릿을 삽입하고 많은 수동 코딩 작업을 관리합니다.
처리기 코드를 작성합니다. 클래스 뷰를 사용하여 소스 코드 편집기에서 코드로 직접 이동합니다. 처리기 함수에 대한 코드를 입력합니다. 클래스 뷰 사용 및 프로젝트에 코드를 추가하는 마법사에 대한 자세한 내용은 코드 마법사를 사용하여 기능 추가를 참조 하세요. 클래스 뷰는 편집기를 열고 빈 함수 템플릿으로 스크롤하여 커서를 배치합니다.
도구 모음 단추를 명령에 매핑합니다. 단추에 적절한 명령 ID를 할당하여 도구 모음의 각 단추를 메뉴 또는 액셀러레이터 명령에 매핑합니다. 프레임워크는 도구 모음 단추의 그리기, 사용, 사용 안 함, 검사 및 기타 시각적 측면을 제어합니다.
처리기 함수를 테스트합니다. 프로그램을 다시 빌드하고 기본 제공 디버깅 도구를 사용하여 처리기가 제대로 작동하는지 테스트합니다. 코드를 단계별로 실행하거나 추적하여 처리기가 호출되는 방식을 확인할 수 있습니다. 처리기 코드를 작성한 경우 처리기는 명령을 수행합니다. 프레임워크는 처리되지 않는 메뉴 항목 및 도구 모음 단추를 자동으로 사용하지 않도록 설정합니다.
대화 상자를 추가 합니다. 대화 상자 편집기를 사용하여 대화 상자 템플릿 리소스를 디자인합니다. 그런 다음 대화 상자 클래스와 대화 상자를 처리하는 코드를 만듭니다. 프레임워크는 대화 상자를 관리하고 사용자가 입력한 정보를 쉽게 검색할 수 있도록 합니다.
대화 상자 데이터를 초기화, 유효성 검사 및 검색합니다. 대화 상자의 컨트롤을 초기화하고 유효성을 검사하는 방법을 정의할 수도 있습니다. Visual Studio를 사용하여 대화 상자 클래스에 멤버 변수를 추가하고 대화 상자 컨트롤에 매핑합니다. 사용자가 데이터를 입력할 때 각 컨트롤에 적용할 유효성 검사 규칙을 지정합니다. 원하는 경우 사용자 고유의 사용자 지정 유효성 검사를 제공합니다. 프레임워크는 대화 상자 초기화 및 유효성 검사를 관리합니다. 사용자가 잘못된 정보를 입력하면 프레임워크에 메시지 상자가 표시되고 사용자가 데이터를 다시 입력할 수 있습니다.
추가 클래스를 만듭니다. 클래스 뷰를 사용하여 MFC 애플리케이션 마법사에서 자동으로 만든 클래스 이외의 추가 문서, 보기 및 프레임 창 클래스를 만듭니다. 추가 데이터베이스 레코드 집합 클래스, 대화 상자 클래스 등을 만들 수 있습니다. (클래스 뷰를 사용하면 MFC 클래스에서 파생되지 않은 클래스를 만들 수 있습니다.) 클래스 뷰는 이러한 클래스를 원본 파일에 추가하고 해당 클래스가 처리하는 명령에 대한 연결을 정의하는 데 도움이 됩니다.
바로 사용할 수 있는 구성 요소를 애플리케이션에 추가합니다. New Item dialog box 다양한 항목을 추가하는 데 사용합니다. 이러한 항목은 애플리케이션에 쉽게 통합되고 많은 작업을 절약할 수 있습니다.
문서 클래스를 구현합니다. 애플리케이션별 문서 클래스 또는 클래스를 구현합니다. 데이터 구조를 저장할 멤버 변수를 추가합니다. 멤버 함수를 추가하여 데이터에 인터페이스를 제공합니다. 프레임워크는 문서 데이터 파일과 상호 작용하는 방법을 이미 알고 있습니다. 문서 파일을 열고 닫고, 문서의 데이터를 읽고 쓰고, 다른 사용자 인터페이스를 처리할 수 있습니다. 문서의 데이터를 조작하는 방법에 집중할 수 있습니다.
열기, 저장 및 다른 이름으로 저장 명령을 구현합니다. 문서의 Serialize 멤버 함수에 대한 코드를 작성합니다. 프레임워크는 파일 메뉴에 열기, 저장 및 다른 이름으로 저장 명령에 대한 대화 상자를 표시합니다. 멤버 함수에 지정된 Serialize 데이터 형식을 사용하여 문서를 작성하고 다시 읽습니다.
뷰 클래스를 구현합니다. 문서에 해당하는 하나 이상의 뷰 클래스를 구현합니다. 클래스 뷰를 사용하여 사용자 인터페이스에 매핑한 뷰의 멤버 함수를 구현합니다. CListView 및 CTreeView를 포함하여 다양한 CView 파생 클래스를 사용할 수 있습니다. 프레임워크는 문서와 해당 뷰 간의 관계를 대부분 관리합니다. 보기의 멤버 함수는 보기의 문서에 액세스하여 화면 또는 인쇄된 페이지에서 해당 이미지를 렌더링하고 사용자 편집 명령에 대한 응답으로 문서의 데이터 구조를 업데이트합니다.
기본 인쇄 기능을 향상시킵니다. 다중 페이지 인쇄를 지원해야 하는 경우 뷰 멤버 함수를 재정의합니다. 프레임워크는 파일 메뉴에서 인쇄, 페이지 설정인쇄 미리 보기 명령을 지원합니다. 문서를 여러 페이지로 분리하는 방법을 알려야 합니다.
스크롤을 추가합니다. 스크롤을 지원해야 하는 경우 CScrollView에서 뷰 클래스 또는 클래스를 파생합니다. 보기 창이 너무 작아지면 자동으로 스크롤 막대가 추가됩니다.
양식 보기를 만듭니다. 대화 상자 템플릿 리소스에 대한 뷰를 기반으로 하려면 CFormView에서 뷰 클래스 또는 클래스를 파생합니다. 보기는 대화 상자 템플릿 리소스를 사용하여 컨트롤을 표시합니다. 사용자는 컨트롤에서 보기의 컨트롤로 탭할 수 있습니다.
데이터베이스 양식을 만듭니다. 양식 기반 데이터 액세스 애플리케이션을 원하는 경우 CRecordView(ODBC 프로그래밍용)에서 뷰 클래스를 파생합니다. 보기는 양식 보기처럼 작동하지만 해당 컨트롤은 데이터베이스 테이블을 나타내는 CRecordset 개체의 필드에 연결됩니다. MFC는 컨트롤과 레코드 집합 간에 데이터를 이동합니다.
간단한 텍스트 편집기를 만듭니다. 보기를 단순 텍스트 편집기로 만들려면 CEditView 또는 CRichEditView에서 뷰 클래스 또는 클래스를 파생합니다. 보기는 편집 함수, 클립보드 지원 및 파일 입력/출력을 제공합니다. CRichEditView 는 스타일이 지정된 텍스트를 제공합니다.
분할자 창을 추가합니다. 창 분할을 지원하려면 CSplitterWnd 개체를 SDI 프레임 창 또는 MDI 자식 창에 추가하고 창의 OnCreateClient 멤버 함수에 연결합니다. 프레임워크는 스크롤 막대 옆에 있는 분할 상자 컨트롤을 제공하고 보기를 여러 창으로 분할하는 작업을 관리합니다. 사용자가 창을 분할하는 경우 프레임워크는 추가 뷰 개체를 만들고 문서에 연결합니다.
애플리케이션을 빌드, 테스트 및 디버그합니다. Visual C++의 기능을 사용하여 애플리케이션을 빌드, 테스트 및 디버그합니다. Visual C++를 사용하면 컴파일, 링크 및 기타 옵션을 조정할 수 있습니다. 또한 소스 코드 및 클래스 구조를 찾아볼 수 있습니다.

참고 항목

OLE 애플리케이션을 만드는 작업 시퀀스
ActiveX 컨트롤을 만드는 작업 시퀀스
데이터베이스 애플리케이션을 만드는 작업 시퀀스
프레임워크를 기반으로 구축