- 1、本文档共152页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MFC程序设计PPT
11.4 对话框 11.4.1 对话框的类型 模式对话框 是用户必须立即响应的对话框,即打开模式对话框后,必须对其进行操作,只有完成了该对话框的操作,关闭该对话框之后,才能操作其他应用程序。 非模式对话框 允许用户打开该类对话框后,同时进行其他操作,当要操作对话框时,只需要用鼠标单击就能将其激活。 11.4.2 用资源编辑器建立对话框 【例11-5】 扩展例11-4的功能,使它能够输入学生档案,包括学生的姓名、性别、系等数据。 设计思路: 定义一个学生档案数据的结构,在例11-4建立的My.dsw项目的CMyView类中定义该结构的对象,用于保存学生档案。然后建立一个对话框,通过对话框将学生档案输入到该学生对象中。 实现步骤如下: 1.在CMyView类的头文件中定义学生档案数据 //MyView.h struct STUDENT{ CString name; CString dept; CString sex; }; class CMyView : public CView{ …… protected: STUDENT s; //s用于保存学生档案 int x,y; //x,y,n,Rect是例11-4建立的数据成员 int n; CRect Rect[1000]; …… }; 红字是添加的代码 2.用资源编辑器建立输入学生档案的对话框 1)打开例11-4建立的My.dsw项目文件,选择资源编辑器向导“ResourceView”,展开“My resources”,右键单击“Dialog”列表项,从弹出的快捷菜单中选择“Insert Dialog”,在资源编辑器中插入一个对话框,如图11-23所示。 工具箱 利用资源编辑器设计对话框 2)调整对话框的大小,然后利用工具箱中的标筌和编辑框等控件设计出如图所示的学生档案输入对话框。 为了能在程序中方便地操作各个对话框控件,将“姓名”后面的编辑框ID改为IDC_Name,单选项“男”的ID改为IDC_Man,单选项“女”的ID改为IDC_Female,“系”后面的编辑框ID改为IDC_Dept。 3)完成上述设置后,双击对话框的任一位置,MFC将弹出建立新类的向导对话框,直接单击该对话框中的“OK”按钮(按默认设置选择其中的“Create a new class”),MFC将弹出指定新类名字和基类的对话框,如图11-28所示。 在“name”中输入对话框类的名字“Student”,在“Bass Class”编辑框中指定其基类为CDialog。设置完成并单击“确定”按钮后,将出现MFC向导对话框,单击其中的“确定”按钮,MFC将在My.dsw项目中添加对话框类Student。 4)上述向导过程将生成一个对话框类Student , // Student.h class Student : public CDialog{ public: Student(CWnd* pParent = NULL); //{{AFX_DATA(Student) enum { IDD = IDD_DIALOG1 }; //对话框的标识 //}}AFX_DATA //{{AFX_VIRTUAL(Student) protected: virtual void DoDataExchange(CDataExchange* pDX); //数据交换函数 //}}AFX_VIRTUAL DECLARE_MESSAGE_MAP() }; 对话框标识 数据交换函数,它将被自动调用,实现对话框与类的数据交换成 利用资源编辑器设计对话框 3.利用类向导添加对话框类的数据交换成员 (1)按快捷键Ctrl+W显示类向导对话框,选中“Member Variables”,在“Class name”列表中选中Student,如图11-29所示。在Control IDs中列出了对话框中需要定义对应数据成员的控件ID。 (2)选中图11-29中的“IDC_Dept”,然后单击“Add Variable”按钮,弹出定义类成员的对话框,如图11-30所示。按表11-3设置Student对话框中各控件标识对应的类成员。 完成上述定义,向导在该类的声明中添加了下面的数据成员定义: class Student : public CDialog{ public: //{{AFX_DATA(Student) enum {IDD = IDD_DIALOG1}; CString m_Dept; CString m_Name
您可能关注的文档
- My name’s Gina-新目标英语七上PPT.ppt
- n阶行列式PPT.ppt
- OFFICE教程PPT.ppt
- ORACLE基础培训PPT.pptx
- Oracle支持的SQLPPT.ppt
- ORACLE教程PPT.ppt
- OPTIMA2100 DV 操作和保养培训PPT.ppt
- Oracle一般行业业务流程PPT.ppt
- Our School Life-七年级英语PPT.ppt
- PCAT互换机の最近の动向PPT.ppt
- 江西省“山江湖”协作体2023-2024学年高考语文一模试卷含解析.doc
- 江西省南昌外国语学校2024年高考英语四模试卷含解析.doc
- 四川省大教育联盟2024届高三第三次模拟考试英语试卷含解析.doc
- 湖北省百所重点校2024-2025学年高三三模(最后一卷)语文试题试卷含解析.doc
- 甘肃省嘉峪关市酒钢三中2024-2025学年高三3.20联考考试语文试题含解析.doc
- 广东省清远市2023-2024学年高考语文押题试卷含解析.doc
- 内蒙古警察职业学院《计算机类专业概论》2023-2024学年第一学期期末试卷.doc
- 江苏省沭阳银河学校2024-2025学年高三第一次大联考历史试题试卷含解析.doc
- 福建省泉州市德化一中2024年高三第三次模拟考试语文试卷含解析.doc
- 2025年广东省茂名市电白区高三下学期第四次段考历史试题含解析.doc
文档评论(0)