MFC中的模態對話方塊和非模態對話方塊
阿新 • • 發佈:2018-12-19
MFC筆記之模態對話方塊和非模態對話方塊
迫於科研的進度壓力,我還是選擇了MFC最為工具去開發裝置除錯軟體,最初想用Qt來創新一下,然而串列埠的通訊一直沒有成功,而且周圍沒有人用Qt使得我在遇到問題無法快速的解決,最終我屈服於現實了. 今天開始速食MFC,其實也很簡單,就是感覺沒有Qt好用.
1.建立模態對話方塊
步驟:
-
新建對話方塊視窗,更改ID
-
右鍵新增類
-
在主對話方塊中新增訊息響應函式
-
在此函式中新建類物件dlg,dlg.doModal()
void CMFCdemo1Dlg::OnBnClickedButton1() { // TODO: 在此新增控制元件通知處理程式程式碼 //阻塞 CDlgExp dlg; dlg.DoModal(); }
2.建立非模態對話方塊
步驟:
- 前面同理
- 在主對話方塊類中宣告私有成員變數
- 在初始化對話方塊函式(oninitDialog)中建立對話方塊dlg.Create(ID),保證之建立一次
- 最後在訊息響應函式中新增dlg.ShowWindow(WM_SHOWNORMAL);
void CMFCdemo1Dlg::OnBnClickedButton2() { // TODO: 在此新增控制元件通知處理程式程式碼 //CDlgShow dlg; //建立 //dlg.Create(IDD_DIG_SHOW);//建立視窗只能建立一次,多次就會崩掉 //顯示 dlg.ShowWindow(SW_SHOWNORMAL); }