问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

CDialog类如何区分和创建模式对话框与无模式对话框?

发布网友 发布时间:2024-09-25 23:00

我来回答

1个回答

热心网友 时间:2024-10-03 10:35

对话框的种类主要有两种:模式对话框和无模式对话框,MFC框架中提供了CDialog类以简化对话框操作。


CDialog作为对话框基类,提供了针对两种对话框类型的构建机制。

无模式对话框的创建过程涉及两个步骤:首先,通过缺省构造函数生成对话框对象,接着调用Create函数,其有两个可用函数原型:



BOOL Create( LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL );
BOOL Create( UINT nIDTemplate, CWnd* pParentWnd = NULL );

参数lpszTemplateName代表无模式对话框模板资源的标识符,nIDTemplate则通常以IDD_开头。pParentWnd是指向对话框父窗口的指针,如果为NULL,对话框将关联到应用程序主窗口。创建后,可通过ShowWindow函数显示对话框。


对于模式对话框,构造函数与无模式类似,通过DoModal函数来显示。默认情况下,OK和CANCEL按钮会调用OnOk和OnCancel函数关闭对话框,OnOk会更新数据,而OnCancel则不会。


当CDialog检测到OK或Cancel时,它会调用::EndDialog,但对话框对象并不会被立即删除。对于模式对话框,由于生命周期短,这通常不成问题。然而,无模式对话框的生存期更长,通常需要在OnOk和OnCancel中重载并调用DestroyWindows函数,以确保对话框在消失前被彻底删除。


扩展资料

一种次要窗口,包含按钮和各种选项,通过它们可以完成特定命令或任务。 查找和替换对话框 对话框与窗口有区别,它没有最大化按钮、没有最小化按钮、大都不能改变形状大小。(“打开文件”对话框是可以改变大小的) 对话框:是人机交流的一种方式,用户对对话框进行设置,计算机就会执行相应的命令。对话框中有单选框、复选框等。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我家300多k的网速为什么玩cf总是很迟钝,连切枪都很慢 CF切换枪的速度很慢 ...东西需要输入apple ID密码 我不知道怎么办?更新微信需要appleID_百... ...一遍id苹果手机的每次更新软件都需要输入id和密码请问怎么解决_百度... ...ID 我不知道密码是什么,也不懂怎么申请,想下个软件都下不了... 微信直播王者荣耀有收益吗 王者荣耀新手主播能挣多少 华为是如何进入手机市场的? ...用的那种安在船边上承鱼竿的那个座子中文叫什么?就是下图中的那个... 放在哪里不动钓鱼的叫什么? 工伤认定处理后赔偿标准是怎么样的? 从武昌火车站到武汉理工大学科技园怎么走 武汉市武昌区大学园路华工科技园怎样走? 人寿财保险公司理赔怎么慢怎么投诉 武昌珞瑜路佳圆路东湖开发区关东科技园在哪 保险存疑拒赔怎么办 保险公司最害怕三个投诉 比特币交易在市场上受到干涉主要原因有哪些? 名词解释客户服务 soul怎么查找手机号注册的用户名? soul怎么看通讯录好友? 鉴定一块蓝田玉!!! bqqhook.dll文件错误危害 中病毒了,cheak_hook.dll&qq.exe XP启动后RUNDLL出现错误 ...框“加载C:\PROGRA~1\TENCENT\ ADDRPLUS\QAHook.。。。 ...公司反告我讹诈,还告我有时间段没上班,要我返还工资怎么办_百度知 ... ...老板发工资发错了多发了一个月工资,要 我退还,如我不退会犯法吗... ...了,人事部今天打电话说多给我打了一个月的工资,让我还回去,怎么办... 老板过年工资错发遭工人拒还,员工有权拒绝返还错发的工资吗? Microsoft Foundation Class重要的MFC CWnd*转化为CDialog* ? 在MFC编程中,为什么不可以直接用CDialog类创建 模态对话框?CDialog dl... agent.exe是什么,占cpu特大 agent.exe: 是什么,做什么,以及其在游戏和安全方面的角色? 怎么实现Excel的多个表格同时输入一个内容? 工伤一级伤残赔偿标准按谁的标准赔偿 广西南宁大鼓文化传播有限公司主营项目 南宁附近有什么地方是可以当天去当天回的啊? 南宁古筝一对一家教? 这青花墨玉是真的吗?值800吗? 怎么可以有多个微信号 初一和高二相差几岁 男生微信名大全霸气高冷 男生霸气犀利微信网名 长春找工作英语一定要好吗 714网贷已经逾期,平台就打了一下联系人电话和通话记录中频繁的号码... 牛郎织女结夫妻什么生肖 写出下列符号的含义3H___,Mg2+中“2“表示___;3SO42-__ 电脑手写板在哪开启 win10如何开启手写板功能