vc模態與非模態對話方塊的建立

2022-09-17 21:57:22 字數 711 閱讀 9419

模態對話方塊和非模態對話方塊的區別?

模態對話方塊(modal):就是對話方塊出現後除了這個對話方塊外其他的東西不能點選

非模態對話方塊(modaless): 就是當非模態對話方塊開啟後還可以點選對話方塊以外的內容。

無論哪一種對話方塊顯示前 必須先定義類

如果我們定義了兩個對話方塊類 第乙個dlg1 dlg2我們先

我們現在想要做的是 讓dlg1 是模態顯示 dlg2非模態顯示,id為 id_modaless

在訊息響應函式裡面新增下面的**,

在此還需要做的就是在 訊息響應函式的開頭新增 #include "dlg1.h" 和#include "dlg2.h"

//顯示modal模式

dlg1 mydlg1 ;//我們先建乙個 dlg1的物件mydlg1

mydlg1.domodal();  //以modal方式顯示

//顯示modaless

dlg2 *mydlg2= new dlg2;

mydlg2->creat(id_modaless);

mydlg2->showwindow(sw_show);

需要注意的是

1、這裡面是運用指標的方式顯示的非模態對話方塊生命週期是整個程式的週期 然而當我們這個訊息函式結束後這個指標也沒有了,

這樣這塊位址我們就不能做其他用了

2、非模態對話方塊點選ok後視窗只是隱藏 而不是銷毀,這裡面我們可以呼叫onok函式 銷毀。

模態對話方塊與非模態對話方塊

1.對話方塊分類 按工作方式不同,可將對話方塊分成兩類 模態對話方塊 modal 在關閉模態對話方塊之前,程式不能進行其他工作 如一般的 開啟檔案 對話方塊 非模態對話方塊 modeless 非模態對話方塊開啟後,程式仍然能夠進行其他工作 如一般的 查詢與替換 對話方塊 2.對話方塊建立 模態對話方...

模態對話方塊與非模態對話方塊

建立對話方塊 case id dialog text dialogbox hinst,makeintresource idd textbox hwnd,textset break 建立模態對話方塊 case id dialog tcolor dhwnd createdialog hinst,make...

模態與非模態對話方塊

vc 模態對話方塊建立 domodal 模式對話方塊關閉順序 1.onclose 訊息響應函式,響應wm close訊息,當 關閉 按鈕被單擊的時候,該函式被呼叫 2.onkillfocus 訊息響應函式,響應wm killfocus訊息,當乙個視窗即將失去鍵盤輸入焦點以前被傳送 3.ondestr...