0001-MFC--对话框模态与非模态

0001-MFC--对话框模态与非模态  


1.我们先建立一个基于对话框的应用DWin1  (我的IDE是Visual Stdio 2008)

    建立后App向导会自动生成工程,工程中会自动生成一个CDWin1Dlg的对话框,是应用的主窗口


2.打开资源视图,在里面找到CDWin1Dlg,在里面加入2个按钮-----模态显示与非模态显示,如下图:



3.把要显示的窗口建出来

   在应用中建立2个对话框类:分别是CModelDlg与CNoModelDlg(建立类后会自动在资源里添加对应的对话框)


4.在里加入新建的两个对话框的的声明

CModelDlg m_modelDlg;
CNoModelDlg m_noModelDlg;


CDWin1Dlg里的模态与非模态的两个按钮添加点击事件的相应代码:


void CDWin1Dlg::OnBnClickedButton1()
{
	m_modelDlg.DoModal();
}


void CDWin1Dlg::OnBnClickedButton2()
{       m_noModelDlg.Create(IDD_NOMODELDLG);
	m_noModelDlg.ShowWindow(SW_SHOW);
}


按Ctrl+F5调试:

模态的显示界面(模态的窗口会盖住主窗口,此时的主窗口无法点击)



非模态的显示界面(非模态的窗口也会盖住主窗口,但是此时的主窗口可以被操作,能被点击和移动)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值