打開VS,開始我們的MFC開發(我所用的版本是VS2010,中文版)
文件-》新建-》項目-》Visual C++中的MFC應用程序,然后在下面寫下工程的名稱還有設置保存的路徑,然后點擊確定,出現歡迎使用MFC應用程序向導,點擊下一步,現在我要建立的是基於對話框的程序所以我選擇“基於對話框”-》點擊下一步,繼續點擊下一步-》到達高級功能時如果你要使用到網絡那么就要把windows套接字給勾上,接着下一步,下一步點擊完成,你就完成了創建一個工程
此時點擊運行按鈕,大家會看到所建的工程的最基本完成了。當然還要開始我們的設計·······。其中我們自己要用到的大多數十,a、資源視圖,b、解決方案資源管理器,c、工具箱,d、屬性
現在我是建了一個工程,名稱為ShutDown,剛建立里面的結構圖為
里面就是平時我們所用到得頭文件(即.h文件),源文件(即.cpp文件),資源文件(即窗體、圖片、對話框之類的可視化東西),而外部依賴項就是工程需要包含的文件(一般我們不用處理它)。下面一個是資源視圖,也就是資源文件所關聯的

Dialog就是我們平時設計所用到的窗體資源,Icon、PNG等就是圖片文件(項目中用到的圖片都放在這些文件里面),String Table就是關於窗體屬性的列表,Version當然就是版本了。
在開發的過程中,當我們需要添加文件,或者添加窗體的時候,直接在對應的文件中點擊右鍵(添加資源或者添加文件或者添加類等添加你所需要的就可以了)。總工程文件就是ShutDown.h和ShutDown.cpp了。而我們寫代碼一般在窗體所對應的文件中寫,那就是Dlg文件,如我的是ShutDownDlg.h和ShutDownDlg.cpp。

其實窗體生成的時候就已經存在兩個按鈕了。窗體中每一個類(也就是說控件)都會有他自己的屬性(在屬性框中我們可以看到),通過它的屬性框我們可以修改一些屬性,如Caption等等。當要為此按鈕添加事件時有多種方法。a、在對應控件上點擊右鍵,在彈出框中可以為其添加變量,添加處理事件的函數(他所在的類應該早就定義好類名,否者就幫他添加一下類名就可以了),添加完后就可以在對應的地方寫你需要的函數了。b、直接雙擊這個控件就可以到達編寫處理函數那里(哈哈夠簡單吧),其他的自己摸索。給一點建議就是把剛生成好的窗體上的控件刪除,然后自己在工具欄里面拖拉自己需要的控件,原因只是經驗而已)
當需要動態創建控件的時候就需要自己映射其控件函數了,MFC中映射就是他的一個特色。具體做法在
// ShutDownDlg.h : 頭文件
//
#pragma once
//下面為自己添加的消息
#define WM_SHOW (WM_USER +1) //自己添加的消息
再在類中添加對應的處理函數
protected:
HICON m_hIcon;
// 生成的消息映射函數
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnShowWindow();//自己添加的函數,要在這里面添加,而且下面還要空出一行
DECLARE_MESSAGE_MAP()
然后在.cpp中的 BEGIN_MESSAGE_MAP(CShutDownDlg, CDialogEx)和END_MESSAGE_MAP()之間把他們映射起來 ,用命令 ON_COMMAND(WM_SHOWWINDOW, &CShutDownDlg::OnShowWindow)注意后面不要加分號
然后就可以在.cpp中添加自己的處理代碼了
afx_msg void CShutDownDlg::OnShowWindow()
{//事件的處理代碼
}
調用的時候只要是關涉到WM_SHOW消息的,都會進行OnShowWindow()處理,譬如我的程序有一處是動態添加右鍵菜單(網上就有如何添加)有一句就是menu.AppendMenu(MF_STRING,WM_SHOW,L"打開");看這里用到消息WM_SHOW,當在跑出來的執行程序中點擊打開菜單,就會自動執行對應的OnShowWindow()函數
就寫到這里,祝你旅途愉快
