1.MFC簡介
Microsoft Foundation Class微軟基礎類庫,這個類集以層次結構組織起來,其中封裝了發部分的Windows API函數和Windows控件,它所包含的功能設計整個Windows操作系統。使用MFC類庫和VC++提供的高度可視的應用開發工具,可使應用程序開發更加簡單,開發週期大大縮短,提高代碼的可靠性和可重用性。
2.任務
新建一個MFC工程後,選在經典MFC界面,下一步下一步...然後編譯即可得到一個最基本的MFC工程。該工程存在一個菜單欄,用戶區和一個工具欄。在菜單欄中有一個叫做“關於”的菜單項,點擊即可彈出一個模式對話框。爲了加深對MFC框架的理解,我想在這個工程中添加一個自己的對話框,從而瞭解到底是哪些部分在操縱着對話框資源的建立和使用。
3.過程
1.爲各個需要用到的資源分配ID
2.在主程序窗口類中添加響應函數聲明並在.cpp文件中實現
void CCaculatorApp::OnMydlg()
{
CMYDLG MyDlg;
MyDlg.DoModal();
}
3.在.cpp文件的消息映射中添加與自己的對話框有關的消息映射
BEGIN_MESSAGE_MAP(CCaculatorApp, CWinApp)
ON_COMMAND(ID_APP_ABOUT, &CCaculatorApp::OnAppAbout)
ON_COMMAND(ID_32772,&CCaculatorApp::OnMydlg)
// 基於文件的標準文檔命令
ON_COMMAND(ID_FILE_NEW, &CWinApp::OnFileNew)
ON_COMMAND(ID_FILE_OPEN, &CWinApp::OnFileOpen)
// 標準打印設置命令
ON_COMMAND(ID_FILE_PRINT_SETUP, &CWinApp::OnFilePrintSetup)
END_MESSAGE_MAP()
3.新建一個對話框類繼承CDialogEx,與資源文件中自己的對話框綁定
class CMYDLG : public CDialogEx
{
public:
CMYDLG();
// 對話框數據
enum { IDD = IDD_MYDLG };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
//// 實現(若對話框內無空間則不添加下面那條消息映射聲明,否則編譯出錯)
//protected:
// DECLARE_MESSAGE_MAP()
};