vc1200I_eg235:模态和非模态对话框的建立

  其实,vc中的对话框本身没有“模态”和“非模态”之分,它们是在实例化对话框时区分开的。

  本例中,ModeDlg是一个对话框,供主对话框调用。

  以模态方式调用对话框:

  

void CTest4VC1200Dlg::OnClickedBtn1()
{
	// TODO: 在此添加控件通知处理程序代码
	ModeDlg dlg;
	dlg.DoModal();
}

  以非模态方式调用对话框:

void CTest4VC1200Dlg::OnBnClickedBtn2()
{
	// TODO: 在此添加控件通知处理程序代码
	ModeDlg* pDlg=new ModeDlg();
	pDlg->Create(IDD_DLG_MODE,this);/*IDD_DLG_MODE:ModeDlg类所关联的对话框ID,this:hwndParent*/
	pDlg->ShowWindow(SW_SHOW);
}

  效果:

图1 主对话框的界面

图2 模态对话框效果

图3 非模态对话框效果

 

 

posted @ 2013-04-08 13:22  Tup  阅读(243)  评论(0)    收藏  举报