基本步驟
1.點擊文件--新建--項目
2. 選擇Win32項目,填入名稱和選擇路徑
3. 在應用程序向導窗口中點擊”下一步“
4. 在應用程序設置窗口中勾選”空項目“,再點擊“完成”
5. 在左邊的解決方案資源管理器窗口中,右擊“源文件”,選擇“添加”-“新建項”
6. 在“添加新項”窗口中,先選擇C++文件(.cpp),再寫入源文件名,點擊“添加”。這樣,源文件就添加好了
7. 添加資源文件(資源文件用來描述對話框的圖形界面),在左邊的解決方案資源管理器窗口中,右擊“資源文件”,選擇“添加”-“資源”
在“添加資源”窗口,選中Dialog,再點擊“新建”
8. 點擊右側的“工具箱”,即可展開工具箱,並添加需要的控件到對話框中
9. 在相應的窗體或控件上右擊鼠標,選擇“屬性”,可以更改已添加組件的屬性。
例如,修改對話框的標題為“測試”,在對話框屬性中更改“Caption”項內容即可。然后將對話框的ID改為DLG,Visible屬性改為TRUE
10. 更改完成后,可以點擊工具欄左上角的“測試對話框”按鈕查看運行效果
11. 建立主函數在之前建好的源文件中添加如圖所示的主函數代碼,代碼的含義已經作了相應的注釋
#include<Windows.h> #include"resource.h" //包含資源文件 //聲明對話框程序 BOOL CALLBACK DlgProc(HWND,UINT,WPARAM,LPARAM); //主函數 int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { /*DialogBox函數:創建一個模態對話框 參數1:實例句柄 參數2:對話框資源模板名 此參數類型為以NULL結尾的字串指針,故用MAKEINTRESOURCE宏對整形ID進行轉換 參數3:對話框的父窗口,如無則為NULL 參數4:對話框程序指針(消息處理函數) */ DialogBox(hInstance,MAKEINTRESOURCE(DLG),NULL,DlgProc); return 0; } //對話框程序 BOOL CALLBACK DlgProc(HWND hDlg,UINT msg,WPARAM wParam,LPARAM lParam) { switch(msg) { case WM_INITDIALOG://初始化對話框的代碼添加到這 return TRUE; case WM_COMMAND://處理命令消息的代碼添加到這 switch(LOWORD(wParam)) { case IDOK://點擊了"確定"按鈕需要執行的操作添加到這 MessageBox(NULL,TEXT("你點了確定"),TEXT(""),MB_OK); return TRUE; case IDCANCEL://點擊取消按鈕需要執行的操作添加到這 /*EndDialog函數:關閉對話框 參數1:要關閉的對話框窗口句柄 參數2:從創建對話框函數返回到應用程序的值*/ EndDialog(hDlg,0); } return TRUE; case WM_CLOSE://點擊右上角小叉關閉時需要執行的操作添加到這 EndDialog(hDlg,0); return TRUE; } return FALSE; }
MessageBox(NULL,TEXT("你點了確定"),TEXT(""),MB_OK);
第一個參數是父窗口的句柄,第二個參數是內容,第三個參數是標題,第四個參數是確定
12. 運行結果
函數注釋
DialogBox創建dialog窗口
函數原型
int DialogBox( HIBSTANCE hInstance,//指向模塊的句柄 LPCTSTRlp Template, // 指向模板的字符串指針 HWND hWndParent, //父窗口句柄 DLGPROC lpDialogFunc // 窗口過程函數 ); MAKEINTRESOURCE(根據ID獲取窗口模板名稱)