- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验六 对话框 20110507
实验六
实验目的:
1 学习如何创建对话框程序,并在其中添加控件。
2 学习如何使用对话框来打开和保存文件。
3 学习创建消息对话框。
4 学习如何创建和使用属性页对话框。
在Windows程序中,对话框是最重要的显示信息和取得用户数据的单元;
一个应用程序可以拥有几个对话框,这些对话框从用户那里接受特定类型的信息 ;
可以使用资源编辑器创建对话框资源,向其中添加控件,调整对话框的布局,使对话框更加便于使用。
实验内容:
应用实例 创建一个基于对话框的应用程序,并添加文件菜单,用来打开和保存文件;建立消息对话框,用来提醒用户在退出前保存文件;同时建立一个属性页对话框,掌握其基本用法。
实验步骤:
1创建一个基于对话框的应用程序
步骤1.使用AppWizard创建一个基于对话框类型的程序Eg6_1。注意在AppWizard的第一页选择“Dialog based” 。
步骤2. AppWizard创建新项目完成后,在工作区单击ResourceView标签来修改程序的资源,双击资源文件夹中的Dialog,然后双击IDD_EG6_1_DIALOG项 ,打开图6.1所示的对话框。
这个标准对话框模板中,使用了两种控件,即两个按钮和一个静态文本。
图6.1 Dialog对话框
3.可以设置对话框的属性,右键单击整个对话框的背景,选择 “Properties”项,在弹出的对话框中修改此对话框ID为:IDD_EG6_1_DIALOG”,标题为:“对话框示例”。
步骤4.当对话框资源完成以后,选择View|ClassWizard,打开 ClassWizard,已经有一个类CEg6_1Dlg与新的对话框相联系。
2 建立文件菜单
在工程Eg6_1中,打开资源编辑器,右键单击背景部分,在弹出的菜单中选择Insert,在Insert Resources对话框中选择Menu,单击NEW 。打开Dialog Properties 对话框,在Menu项选择IDR_MENU1,将菜单与对话框资源联系起来 。
步骤1.在资源编辑器里选择IDR_MENU1,建立文件菜单,文件菜单下包括打开和另存为两个子菜单。两个子菜单的属性设置如图6.2、6.3所示 :
图6.2 “打开”子菜单设置
图6.3 “另存为”子菜单设置
2.为子菜单添加消息响应函数
为“打开”子菜单添加消息响应函数如下:
void CEg6_1Dlg::OnFileOpen()
{
CFileDialog? dlg(true);????????? // 构造文件通用对话框对象
dlg.DoModal();?????????????????????? //打开文件对话框
}
步骤3.为“另存为”子菜单添加消息响应函数如下:
void CEg6_1Dlg:: OnFileSaveAs()
{
CFileDialog?? dlg(FALSE);??????????? // 构造文件通用对话框对象
dlg.DoModal();??????????????????????????? //打开文件对话框
}
运行程序 ,分别选择“打开”和“另存为”菜单查看结果。
3 建立消息对话框
消息对话框是最常用最简单的对话框,一般将通过调用函数MessageBox弹出的对话框称为消息对话框。
????????????? MessageBox函数原型为:
????????????? int? MessageBox (
????????????? ?? ? HWND h????????????? //父级窗口的句柄
????????????? ? ???LPCTSTR lpText,?? //指向信息字符串地址的指针
???????? ????????? LPCTSTR lpCaptain, //指向消息对话框标题
???????????????????//字符串地址指针
????????????????? UINT uType????? //消息对话框的风格
???????????????????? );
下面为Eg6_1? 程序增加消息对话框的功能:
步骤1.为对话框新增一个菜单项,标题为“其他对话框”,其子菜单为“消息对话框” ,其属性设置如图6.4所示 :
图6.4 “消息对话框”子菜单设置
2.利用ClassWizard为“消息对话框”菜单添加消息相应函数,函数名为OnMenu1() ,代码如下:
????????????? void CEg6_1Dlg::OnMenu1()
????????????? {
????????????? //TODO: Add your command handler code here
MessageBox(“未保存文件,要退出吗?”,“警告”,????? MB_
您可能关注的文档
- 浅论矿业公司机电设备维修管理.doc
- 电路实验7互感电路观测.pdf
- 西方经济学简明原理、微观部分计算题演算及答案.doc
- 九年级数学教学工作个人总结.doc
- 农村区域规划(内容、方法).doc
- 电子系学生第四课堂活动计划书.doc
- 探究凸透镜成像的规律(备用).ppt
- 2013年 高考 理综 物理 冲刺 精选 含答案解析.doc
- 嵌入式系统与接口技术课程报告.pdf
- th-g71电台手册.pdf
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)