对话框可按其动作模式分为“有模式”和“无模式”两大类。对于有模式对话框,在对话框被关闭之前,用户无法进行其它工作。而无模式的对话框,而它仍然保留在屏幕上的同时,用户可以在应用程序的其它窗口进行工作。
建立一个基于对话框的程序Dialog.
在资源管理器中插入一个对话框,Ctrl+w新建一个类COwnerDiaog;在IDD_DIALOG_DIALOG中加一个按钮,双击它编辑代码。
void CDialogDlg::OnButton1()
{
COwnerDialog dlg;
dlg.DoModal();
}
不要忘了#include "OwnerDialog.h "。你不关闭它,无法对主对话框下达命令,但你仍然可以打开其它程序。我们删除刚刚添加的代码。
void CDialogDlg::OnButton1()
{
COwnerDialog *pDlg=new COwnerDialog();
pDlg-> Create(IDD_DIALOG1);
pDlg-> ShowWindow(SW_RESTORE);
}
这是一个无模式对话框,你可以在处理子对话框之前,对主对话框下达命令。注意如果你关闭了主对话框,则子对话框也被关闭了。
#include "OwnerDialog.h "。一般是头文件,然后对应的类是C+头文件。
影藏当前窗口:
//获取当前窗口,并隐藏
AfxGetApp()-> m_pMainWnd->ShowWindow(SW_HIDE);
BOOL ShowWindow(int nCmdShow) 方法 用于控制窗体显示状态
nCmdShow可选值如下:
SW_HIDE 隐藏窗体;
SW_MINIMIZE 最小化窗体;
SW_RESTORE SW_SHOWNORMAL 在窗体最大化或者最小化时还原窗体;
SW_SHOW 以当前窗体位置和大小显示窗体;
SW_SHOWMAXIMIZED 最大化显示窗体并激活窗体;
SW_SHOWMINIMIZED 最小化显示窗体并激活窗体;
SW_SHOWNA 以当前窗体大小和位置显示窗体,保持当前活动窗体不变;
SW_SHOWMINNOACTIVE 最小化显示窗体,保持当前活动窗体不变;
SW_SHOWNOACTIVE 以最近显示窗体大小和位置显示窗体,保持当前活动窗体不变。
建立一个基于对话框的程序Dialog.
在资源管理器中插入一个对话框,Ctrl+w新建一个类COwnerDiaog;在IDD_DIALOG_DIALOG中加一个按钮,双击它编辑代码。
void CDialogDlg::OnButton1()
{
COwnerDialog dlg;
dlg.DoModal();
}
不要忘了#include "OwnerDialog.h "。你不关闭它,无法对主对话框下达命令,但你仍然可以打开其它程序。我们删除刚刚添加的代码。
void CDialogDlg::OnButton1()
{
COwnerDialog *pDlg=new COwnerDialog();
pDlg-> Create(IDD_DIALOG1);
pDlg-> ShowWindow(SW_RESTORE);
}
这是一个无模式对话框,你可以在处理子对话框之前,对主对话框下达命令。注意如果你关闭了主对话框,则子对话框也被关闭了。
#include "OwnerDialog.h "。一般是头文件,然后对应的类是C+头文件。
影藏当前窗口:
//获取当前窗口,并隐藏
AfxGetApp()-> m_pMainWnd->ShowWindow(SW_HIDE);
BOOL ShowWindow(int nCmdShow) 方法 用于控制窗体显示状态
nCmdShow可选值如下:
SW_HIDE 隐藏窗体;
SW_MINIMIZE 最小化窗体;
SW_RESTORE SW_SHOWNORMAL 在窗体最大化或者最小化时还原窗体;
SW_SHOW 以当前窗体位置和大小显示窗体;
SW_SHOWMAXIMIZED 最大化显示窗体并激活窗体;
SW_SHOWMINIMIZED 最小化显示窗体并激活窗体;
SW_SHOWNA 以当前窗体大小和位置显示窗体,保持当前活动窗体不变;
SW_SHOWMINNOACTIVE 最小化显示窗体,保持当前活动窗体不变;
SW_SHOWNOACTIVE 以最近显示窗体大小和位置显示窗体,保持当前活动窗体不变。