模態對話框

模態對話框

模態對話框(Modal Dialogue Box,又叫做模式對話框),是指在用戶想要對對話框以外的應用程式進行操作時,必須首先對該對話框進行回響。如單擊【確定】或【取消】按鈕等將該對話框關閉。一般來說,Windows應用程式中,對話框分為模態對話框和非模態對話框兩種。二者的區別在於當對話框打開時,是否允許用戶進行其他對象的操作。

基本介紹

  • 中文名:模態對話框
  • 外文名:Modal Dialogue Box
  • 別稱模式對話框
  • 類別:編程開發
區別,建立模態對話框,

區別

模態對話框壟斷了用戶的輸入。當一個模態對話框打開時,用戶只能與該對話框進行互動,而其他用戶界面對象收不到輸入信息。模態對話框下,用戶需要操作目標對話框就必須先操作模態對話框。用戶對模態對話框的處理如圖所示。
非模態對話框(Nonmodal Dialogue Box,又叫做無模式對話框),與模態對話框不同,當用戶打開非模態對話框時,依然可以操作其他視窗。
模態對話框的處理過程模態對話框的處理過程

建立模態對話框

1.選擇File/New/MFC AppWizard[exe],Project name為Test,單擊OK.
2.選擇Single document,單擊Finish.
3.選擇左側Workspace/ResourceView,在Dialog上單擊右鍵,選擇Insert Dialog,默認名字為IDD_DIALOG1.
4.雙擊右側工作區中的對話框,彈出一對話框Adding a Class,默認選擇Create a new class,單擊OK.
5.在對話框New Class中,在Name中填入CDialogproty,Base class選擇預設名字CDialog,單擊OK.在MFC ClassWizard 上選擇OK.
6.選擇左側Workspace/ClassView,雙擊CTestView
#include "Dialogproty.h"
class CTestView : public CView
{
protected: // create from serialization only
7.選擇左側Workspace/ResourceView/Menu,雙擊IDR_MIANFRAME,在右側工作區上方,"幫助(H)"後雙擊,彈出對話框Menu Item Properties,點擊General/Pop-up,選為非選擇狀態,在ID內輸入IDR_TEST,Caption中輸入Test,關閉對話框Menu Item Properties,
8.在按鈕Test上點擊右鍵,選擇ClassWizard...,在Messages中選擇COMMAND,點擊Add Function...,彈出對話框Add Member Function,點擊OK,選擇Edit Code.
9.在以下函式中添加代碼
void CTestView::OnTest()
{
// TODO: Add your command handler code here
CDialogproty dlg;
dlg.DoModal();
}
10.編譯,運行。點擊選單按鈕Test,彈出對話框,點擊OK!完成!

相關詞條

熱門詞條

聯絡我們