每年的9月20日,是全国爱牙日。作为中国特有的节日,爱牙日的由来主要与兰州地区的牙科医生--白成平有关。白成平在17岁的时候,就跟随美国口腔医学博士毛燮均学习牙医技术。此后,他便一直在兰州一家医院担任牙科医生。在50多年的牙医生涯中,他对人
全部3个回答 >什么叫做对话框
-
对话框 一种次要窗口,包含按钮和各种选项,通过它们可以完成特定命令或任务。
对话框与窗口有区别,它没有最大化按钮、没有最小化按钮、不能改变形状大小对话框:是人机交流的一种方式,用户对对话框进行设置,计算机就会执行相应的命令。
对话框中有单选框、复选框等。
对话框的组成 对话框主要由两部分组成。
对话框资源:可以使用对话框编辑器来配置对话框的界面,如对话框的大小、位置、样式,对话框中控件的类型和位置等。
另外,我们还可以在程序的执行过程中动态创建对话框资源。
对话框类:在MFC程序中,可以使用向导帮助用户建立一个与对话框资源相关联的类,通常这个类由CDialog类派生。
对话框的类型 对话框可以分为模式对话框和无模式对话框两种类型。
CDialog 为了能够方便的操作对话框,MFC为用户提供了CDialog类。
它是在屏幕上显示对话框的基类,与对话框资源紧密相关,提供了管理对话框的接口,封装了一些对话框的相关操作。
从CDialog的定义代码可以看出,Cdialog提供了两套构建Cdialog对象的系统,分别用于模式对话框和无模式对话框。
无模式对话框对象的构建过程,它首先调用缺省的构造函数生成对话框对象,然后调用Create函数创建和初始化对话框。
Cdialog类中的Create函数有两种函数原型: BOOL Create( LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL ); BOOL Create( UINT nIDTemplate, CWnd* pParentWnd = NULL ); 其中, 参数lpszTemplateName是无模式对话框模板资源的标志符; 参数nIDTemplat是对话框模板资源的标志符,它通常以IDD_开头(例如IDD_DIALOG1); 参数pParentWnd是指向对话框对象所属的父窗口的指针(如果它为NULL,则表示对话框对象的父窗口是应用程序主窗口)。
如果希望对话框中它的父窗口创建后马上被显示,就必须把对话框模板设置为WS_VISIBLE形式。
否则,需要调用ShowWindow函数来显示对话框。
对于模式对话框,其构造函数如下所示: CDialog( LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL ); CDialog( UINT nIDTemplate, CWnd* pParentWnd = NULL ); 构造函数的参数说明与无模式对话框的Create函数类似。
在模式对话框中,当创建了对话框对象后,可以通过调用DoModal函数来显示对话框。
一般情况下,无论是模式对话框还是无模式对话框,都有两个按钮OK和CANCEL。
对话框为它们提供了默认的消息处理函数OnOk和OnCancel。
调用这两个函数都将关闭对话框。
所不同的是,默认的OnOk函数中关闭对话框前将更新对话框数据,而默认的OnCancel函数不更新对话框数据。
当CDialog类检测到OK或Cancel键时,它将调用::EndDialog函数。
EndDialog函数虽然结束了对话框应用程序,但却并没有删除对话框对象,释放内存。
这对于模式对话框来说,不是问题,它的生存时间不长,我们一般在栈上创建它们;但无模式对话框则不同,它的生存时间更长,我们通常在栈上创建它们,并且希望它在消失之前能够删除自己。
因此,大多数情况下,我们需要在无模式对话框中重载OnOK和OnCancel函数,加入DestroyWindows函数来彻底地删除它。
对话框数据交换和验证机制 在VC中,所有的对话框函数都是使用C++代码实现的,它并没有采用特殊的资源或“奇特”的宏,但却可以很好地实现用户与应用程序之间的交互工作,这里的关键就在于对话框应用程序中广泛采用的对话框数据交换和验证机制。
对话框数据交换(DDX,Dialog Data Exchange)用于初始化对话框中的控件并获取用户的数据输入,而对话框数据验证(DDV,Dialog Data Validation)则用于验证对话框中数据输入的有效性。
MFC在每个对话框类中提供了一个用于重载的虚函数——DoDataExchange来实现对话框数据交换和验证工作。
对话框数据交换 如果使用DDX机制,则通常在OnInitDialog程序或对话框构造函数中设置对话框对象成员变量的初始值。
在对话框即将显示前,应用程序框架的DDX机制将成员变量的值传递给对话框的控件,当对话框响应DoModal或Create而被显示时,对话框控件将“显示”这些值。
Cdialog类中的OnInitDialog函数默认时将调用CWnd类的UpdateData成员函数初始化对话框中的控件。
UpdateData函数的原型如下: BOOL UpdateData( BOOL bSaveAndValidate = TRUE ); 函数参数为TRUE,即将对话框及其控件中的数据传递给程序代码中的成员变量; 函数参数为FALSE,即将类中的数据状态传递给对话框及其控件。
当用户重载DoDataExchange函数时,也就为每一个数据成员(控件)指定了一个DDX函数调用。
对话框数据验证 除了调用DDX参数指定数据交换外,用户还可以使用DDV函数进行对话框数据验证。
在调用控件的DDX函数后,必须立即调用该控件的DDV函数。
大部分DDV函数的原型如下所示。
DDV_MinMaxCustom(pDX, Data, MinData, MaxData); 其中,参数pDX是一个指向CdataExchange对象的指针,参数Data中存放着即将被验证的数据,后两个参数用于定制数据的范围。
CdataExchange类 如果仅仅需要使用对话框数据,一般没有必要了解数据交换/验证的核心内容。
但在了解了数据交换和验证的实质后,用户就可以编写自己的数据交换和验证代码,定制DDX/DDV. 对话框控件 控件是一个可以与其交互以完成输入或操作数据操作的对象,它也是一种特殊的窗口。
控件通常出现在对话框或工具栏中。
Windows提供了多种多样的控件,在MFC应用程序中,能够使用的控件通常可以分为三种。
1)windows公用控件:包括编辑控件、按钮、列表框、组合框、滑动条控件等,另外也包括所有者描述的控件。
2)ActiveX控件:既可以在对话框中使用,也可以在HTML网页中使用。
3)由MFC提供的其他控件类 我们主要介绍第一种类型的控件——Windows公用控件。
Windows操作系统提供了多种windows公用控件,这些控件对象都是可编程的,Visual C++的对话框编辑器支持将这些控件对象添加到对话框中。
用户可以在工具箱的对话框编辑器中看到这些windows公用控件。
MFC为了更好的支持windows公用控件,提供了多种控件类,每一个控件类封装一种控件,并提供相应的成员函数来管理操作控件。
2023-10-24 17:56:39 -
对话框是CDialog类的派生类,它的主要功能是输出信息和接收用户的输入。对话框是一个特殊类型的窗口,任何对窗口的操作都可以在对话框中进行。
对话框可以分为两种类型:
(1)模式对话框:对话框弹出时,用户必须向对话框进行相应的操作,在退出对话框之前,其所在的应用程序是不能往下执行的。
(2)无模式对话框:对话框弹出后,一直保留在屏幕上,用户可以在对话框所在的应用程序中进行其他的操作。
2023-10-24 17:56:39
-
问 爱牙日的由来答
-
问 爱尔兰是哪个国家答
爱尔兰被称为翡翠岛国,这里西临大西洋、东靠爱尔兰海,与英国隔海相望。爱尔兰其实是一个独立的西欧国家,为北美通向欧洲的通道。爱尔兰、英格兰、苏格兰、威尔士是四个民族,也是四个地方。在历史上,这四个地方分分合合,瓜葛不断。1918年前,四个民族
全部10个回答 > -
问 圣城是哪个城市答
希腊雅典、中国洛阳、沙特麦加和以色列耶路撒冷被世界公认为世界四大圣城。关于洛阳圣城称号的由来,可追溯至上古时期。 相传上古时期,洛阳孟津县境内的黄河中出现背着“河图”的龙马和背着“洛书”的神龟,它们把图和书献给了伏羲后,伏羲根据图和书
全部10个回答 > -
问 芥菜的营养价值答
食材简介: 芥菜又称盖菜、挂菜,是中国的特产蔬菜。芥菜植株一般可高150厘米,幼茎及叶具有毛刺。经过长期选择和栽培,芥菜出现了不同的变种:根芥菜,也叫大头菜,主要用来腌制咸菜;叶芥菜俗称雪里红,可制成霉干菜;茎芥菜,用来制作榨菜;芽芥
全部10个回答 > -
问 猪肝的营养价值答
食材简介: 猪肝又名血肝,是猪的肝脏,与胆相连,肝脏是动物体内储存养料和解毒的重要器官。猪肝在消化系统中能够制造胆汁,一般呈紫红色、红褐色,质软而脆,呈楔形,右端圆钝,左端扁薄,可分为上、下两面,前后两缘,左右两叶。 营养功效:
全部10个回答 > -
问 花椒的营养价值答
食材简介: 花椒,又叫麻椒、蜀椒、点椒等,是我国原产的一种干、枝、叶、果均具浓郁辛香的落叶灌木或小乔木。它最初野生于我国中西部,是作为是敬神的香物。现在广泛分布于我国南北各地。由于它的果皮暗红,密生粒状突出的腺点,犹如细斑,故花椒之名
全部10个回答 > -
问 银鱼的功效与作用答
食材简介: 银鱼,又称炮仗鱼、面条鱼、白饭鱼等,通体白色,整体长约10厘米,刺少,有牙并且十分锋利。银鱼具有海洋至江河洄游的习性,多生活于水的下层,我国的太湖、西湖、马湖是三大银鱼盛产湖。 营养功效: 银鱼所含营养十分丰富,具有高
全部10个回答 > -
答
大理是悠闲和浪漫的代名词,下关的风,上关的花,苍山的雪,洱海的月,“风花雪月”构成了大理最著名的特色。去大理,我们的路线是先游览大理古城周边及崇圣寺三塔,然后环洱海游,最后以登苍山结束。大理古城是大理旅游的核心区,这里承载着大理历史文化、宗
全部10个回答 > -
问 原单和正品的区别答
现在的市场可以说是乌烟瘴气,光各种产品的头衔都搞的人一头雾水,那么,原单和正品有什么区别呢?所谓的原单货和“真货”的唯一区别,不过是“庶出”而已,数量很少。众所周知,现在国外60%以上的奢侈品都在中国生产。国外的一些大品牌会在国内找一些代工
全部10个回答 > -
问 太湖的简介答
“太湖美呀太湖美,美就美在太湖水”,1978年,这首《太湖美》传遍大江南北,太湖一时成为了大家都心中的向往之地。太湖位于江苏省南部,长江三角洲南部,是中国著名的五大淡水湖之一。太湖湖泊面积2427.8平方公里,湖岸线全长393.2公里。其西
全部10个回答 >