2模态对话框(ModalDialogBox).ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2模态对话框(ModalDialogBox).ppt

* * 第11章 对话框(DIALOG) 11.1 对话框模板资源描述文件 11.2 自定义对话框类 11.3 对话框的数据交换和数据检验 11.4 以对话框为主界面的应用程序 11.5 MFC预置的通用对话框 11.6 非模态对话框 11.7 属性页(自学) 对话框(Dialog):是用户与应用程序交互的重要的界面(输入数据,显示数据)。 CWnd CDialog 设计一个对话框, 创建对话框的模板资源 派生CDialog的子类,使用1)步的对话框资源 11.1 对话框模板资源描述文件 VC++中通常在资源视图(Resource View)中创建和编辑对话框资源。参见图1和图2,创建的对话框资源保存在.RC文件。 图1 图2 对话框名 DIALOG [载入特性选项] X, Y, Width, Height [设置选项] BEGIN [对话框上控件的定义] END 对话框模板资源描述文件(.RC) 设置选项:包括CAPTION(标题)、FONT(字体)和STYLE(样式)等。 对话框常用样式 对话框中常用的控件及其说明 11.2 自定义对话框类 1. MFC的对话框类及用户自定义对话框类 CObject CCmdTarget CWnd CDialog 用户自定义对话框类由CDialog派生。其构造函数如下: lpszTemplateName : 不是资源标识的字符串常量形式,而是模板资源的名称。如, CDialog(“IDD_DIALOG1”); // ERROR CDialog(IDD_DIALOG1); // OK 除非.RC文件中定义的模板资源名称是双引号括起来的。 此时, CDialog(“MyDialog”); // OK 依据对话框资源模板,创建用户自定义的对话框类(CLASSWIZARD) 2. 模态对话框(Modal Dialog Box) 对话框分为模态和非模态之分,两者的差别在于对话框是否垄断应用程序的所有消息。 Modal dialog boxes, which require the user to respond before continuing the program Modeless dialog boxes, which stay on the screen and are available for use at any time but permit other user activities 模态对话框的创建: virtual int CDialog::DoModal(); Remarks Call this member function to invoke the modal dialog box and return the dialog-box result when done. This member function handles all interaction with the user while the dialog box is active. This is what makes the dialog box modal; that is, the user cannot interact with other windows until the dialog box is closed. Example: CMyDialog dlg; dlg.DoModal(); 载入对话框模板 UpdateData() OnInitDialog() 消息循环 OnOK() UpdateData() EndDialog() return IDOK OnCancel() EndDialog() return IDCANCEL OK按钮消息 Cancel按钮消息 DoModal()执行过程 垄断消息 分析、讲解例11-1 virtual void CDialog::OnOK(); virtual void CDialog::OnCancel(); void MFCexp11_1:View:OnLButtonDown(….) { ….. CMyDialog dlg; dlg.DoModal(); ….. } 11.3 对话框数据交换和数据检验 1. 数据交换:DDX( Dialog Data eXchange ) Data Control 显示 保存 Control Memory Variables Binding 如何实现? 2. 用Class Wizard为对话框添加成员变量 Category: Control: 与控件绑定的是类对象 Value:与控件中的数据进行绑定 使用Control还是Value根

文档评论(0)

wendang_12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档