170 likes | 360 Views
第 4 章 MFC 基于对话框编程. 保定职业技术学院. 第 4 章 MFC 基于对话框编程. 4.1 基于对话框的应用程序 4.2 基本消息框 4.3 公用对话框 4.4 创建自定义对话框 4.5 专题讨论与作业设计. 4.1 基于对话框的应用程序. 创建基于对话框的应用程序框架 在对话框中添加控件 编辑控件的属性 关联控件与变量 关联功能与控件. 4.2 基本消息框. 消息框函数 消息框函数 MessageBox( ) 是窗口类用来创建消息框的一个成员函数,函数的定义如下: int MessageBox(
E N D
第4章 MFC基于对话框编程 保定职业技术学院
第4章 MFC基于对话框编程 • 4.1基于对话框的应用程序 • 4.2基本消息框 • 4.3公用对话框 • 4.4创建自定义对话框 • 4.5专题讨论与作业设计
4.1基于对话框的应用程序 • 创建基于对话框的应用程序框架 • 在对话框中添加控件 • 编辑控件的属性 • 关联控件与变量 • 关联功能与控件
4.2基本消息框 • 消息框函数 消息框函数MessageBox( )是窗口类用来创建消息框的一个成员函数,函数的定义如下: int MessageBox( LPCTSTR lpszText, LPCTSTR, LPCTSTR lpszCaption = NULL, UINT nType = MB_OK );
4.2基本消息框 • MessageBox( )函数有三个参数。 第一个参数lpszText,是要显示给用户的消息文本; 第二个参数lpszCaption,是要显示在消息框的标题栏中的标题,它是可选的; 第三个参数nType,用来指定显示给用户的按钮或图标,它也是可选的。 函数的第三个参数还可以指定消息框要显示的图标及按钮风格,
4.3公用对话框 • 公用对话框类 MFC类库提供的公用对话框类主要有: CColorDialog类:用于颜色选择对话框。 CFileDialog类:用于文件的打开或保存对话框。 CFindReplaceDialog类:用于查找或查找替换对话框。 CFontDialog类:用于字体设置对话框。 CPrintDialog类:用于打印设置对话框。
4.3公用对话框 • 使用公用对话框步骤 使用公用对话框的步骤如下: (1)创建一个对话框对象并对其属性进行设置。 (2)通过对话框类的DoModal函数向用户显示对话框并让用户选择。 (3)获得DoModal函数的返回值,判断用户是否做出了选择。如果用户单击了“确定”按钮返回值为IDOK,则读取用户设置来响应用户的操作;如果用户单击了“取消”,则不响应用户的操作。
4.3公用对话框 • 例如,使用文件打开对话框获得要打开文件名的一般代码为: CFileDialog fdlg(TRUE); //调用对话框,让用户选择 if(fdlg.DoModal()==IDOK) { m_edit_sRV=fdlg.GetPathName(); UpdateData(FALSE);}
4.4创建自定义对话框 • 对话框的基本知识 对话框按照其功能的不同可以分为模式对话框和无模式对话框,它们在外观上没有什么区别,但是在对话框的创建和删除上却有一定的区别。 模式对话框是最常见的对话框,当用户在应用程序中显示一个模式对话框时,不能在该对话框与该应用程序的其它窗口之间切换,而必须关闭对话框之后,才能将输入焦点转移到应用程序的其它窗口,这种类型的对话框叫做模式对话框,也称模态对话框。如Word字处理程序的“打开”对话框。 相对于模式对话框而言,无模式对话框不仅允许在对话框与其它应用程序的窗口之间切换,而且允许在对话框与同一程序的窗口之间切换,这种类型的对话框称为无模式对话框,也称非模态对话框。在Word字处理中,“查找与替换”对话框就是一个典型的无模式对话框,用户可以一边查找文字,一边编辑文本。
4.4创建自定义对话框 • 自定义对话框的创建步骤: (1)使用对话框的资源编辑器设计对话框的外观和控件的布局 (2)使用类向导创建新的对话框类。 (3)在对话框类中加入与控件相关联的成员变量。 (4)给对话框中的控件添加消息处理函数。 (5)在应用程序中声明对话框对象,并利用对话框的成员函数向用户显示对话框并接收用户的选择。
4.4创建自定义对话框 • 非模式对话框的数据交换机制
4.4创建自定义对话框 • 模式对话框的数据交换机制
4.5专题讨论与作业设计 • 4.5.1专题讨论 (1)为什么必须指定应用程序窗口中控件的切换顺序? (2)为什么要给控件指定惟一的ID值? (3)在检查每个控件的值之前,为什么必须调用UpdateData函数? (4)模式对话框与无模式对话框的数据是如何交换的? • 4.5.2作业设计 (1)扩展【例4.1】应用程序功能,设计一模式对话框,当单击“打开对话框”按钮时,弹出该对话框。 (2)设计一个简单的计算器,有加、减、乘、除、等于等运算符按钮和数字按钮,能够计算四则运算,将结果显示在窗口中。