<MFC>模态对话框和非模态对话框的创建弹出

本文详细介绍了在MFC中如何创建和显示模态及非模态对话框。模态对话框在弹出后会阻止用户与应用程序其他窗口的交互,直到关闭;而非模态对话框允许用户同时与多个窗口进行操作。创建模态对话框包括创建对话框模板、添加类、处理消息等步骤,通过DoModal()函数弹出。非模态对话框的创建则涉及动态分配内存、显示和手动删除对话框对象的过程。
摘要由CSDN通过智能技术生成

一、模态对话框的创建及显示

1、Windows对话框分为两类:模态对话框和非模态对话框。

    模态对话框:当它弹出后,本应用程序其他窗口将不再接受用户输入,只有该对话框响应用户输入,在对它进行相应操作退出后,其他窗口才能继续与用户交互。

非模态对话框:它弹出后,本程序其他窗口仍能响应用户输入。非模态对话框一般用来显示提示信息等。

 

2、模态对话框的弹出

①创建一个新的对话框模板。

②为创建的对话框添加类,在Solution Explorer中可以看到生成了CTipDlg类的头文件TipDlg.h和源文件TipDlg.cpp。

③为按钮添加消息处理函数OnBnClickedAddButton()。

④在AdditionDlg.cpp中包含CTipDlg的头文件:#include "TipDlg.h"。

⑤在消息处理函数OnBnClickedAddButton()的函数体中,构造CTipDlg类的对象tipDlg,并通过语句tipDlg.DoModal();弹出对话框,最后判断DoModal()函数的返回值是IDOK还是IDCANCEL来确定做何种处理。

1)如果仅仅是弹出:

CAdditionDlg dlg;  

dlg.DoModal();

2)可以通过模态对话框DoModal函数的返回值,判断用户选择了“确定”还是“取消”。注意函数返回值的类型INT_PTR

CSelectDLG dlgload;

//

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值