基於對話框的MFC應用程序基本結構


新建一個基於對話框的MFC應用程序,假設命名為 Test:則該應用程序在剛創建的時候,有4個非常重要的文件和3個類:

4個非常重要的文件

1、Test.h        

2、Test.cpp      

(應用程序類頭文件)

(應用程序類實現文件)

3、TestDlg.h    

4、TestDlg.cpp 

(對話框類頭文件)

(對話框類實現文件)

3個類
類名 定義所在位置 類的實現代碼所在位置
CTestApp Test.h Test.cpp
CTestDlg TestDlg.h TestDlg.cpp 
CAboutDlg TestDlg.cpp TestDlg.cpp

每個文件中的內容: 

1、

Test.h: 

(1)#pragma once + 非活動預處理 + 各種包含(resource.h + 后續各種類的頭文件)

(2)CTestApp類的定義(構造函數、重寫InitInstance函數,聲明消息映射表)

(3)extern CTestApp theApp(聲明了一個應用程序對象)

2、

Test.cpp:

(1)各種包含頭文件(stdafx.h + Test.h + TestDlg.h)+ 活動預處理;

(2)消息映射表(BEGIN~END)

(3)應用程序類構造函數:CTestApp();

(4)聲明唯一的一個CTestApp對象;

(5)CTestApp初始化函數:InitInstance();

3、

TestDlg.h:

(1)#pragma once + 各種包含(afxwin.h + 后續的各種類的頭文件)

(2)CTestDlg類定義(關聯的對話框ID + HICON m_hIcon +構造+ DoDataExchange +聲明消

  息映射函數(OnInitDialog+OnSysCommand+OnPaint+OnQueryDragIcon)+ 聲明消息映射表)

4、

TestDlg.cpp:

(1)各種包含頭文件(stdafx.h + afxdialogex.h + Test.h + TestDlg.h) + 活動預處理;

(2)CAboutDlg類的定義(關聯的對話框ID + 構造 + DoDataExchange + 聲明消息映射表)+

  實現(構造 + DoDataExchange + 消息映射表BEGIN~END)

(3)CTestDlg類的實現(構造 + DoDataExchange + 消息映射表BEGIN~END)

 (表中有3個消息ON_WM_SYSCOMMAND + ON_WM_PAINT + ON_WM_QUERYDRAGICON

(4)CTestDlg消息處理程序:(消息處理程序對應消息映射表中的消息)

      OnInitDialog + OnSysCommand + OnPaint + OnQueryDragIcon。 

 

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM