- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 界面编程
Windows是一种具有GUI的操作系统,GUI包括:窗口、菜单、对话框和控件等基本界面元素,及MFC提供的工具栏和状态栏等组合控件,还有键盘、鼠标等消息响应与事件驱动。
2.1 菜单设计
1.菜单
菜单(menu)是GUI程序的主要命令接口。菜单可分为包含若干菜单项的弹出(Popup)式菜单和发送命令消息的菜单项(menu item)两大类。而其中的弹出式菜单(以下简称为菜单),又可以分成菜单条中的顶层菜单和按鼠标右键后弹出的浮动菜单。可以用键盘(快捷)和鼠标(直观)这两种输入设备来访问菜单和菜单项(以后简记为“菜单[项]”)。在用键盘访问时,还可使用助记键和快捷键:
访问键(mnemonic key助记键 / hot key热键):菜单[项]中出现的带下划线的字符(一般为大写英文字母),例如菜单条上“文件(F)”菜单的字母“F”和文件菜单中的“另存为(A)”菜单项的字母“A”。使用方法:
按“Alt+访问键”,可“选中”当前窗口菜单条上访问键所对应的菜单[项],例如按“Alt+F”会打开“文件(F)”菜单
按“访问键”本身,可“选中”当前已展开菜单中其所对应的的菜单项,例如在已经打开的文件菜单中,按“A”会选中“另存为(A)...”菜单项,从而打开对应的“另存为”对话框
快捷键(shortcut key / accelerator key加速键):出现在菜单项右端的功能键组合,一般为[Ctrl/Alt/Shift+]大写英文字母或功能键Fn。用快捷键可以直接访问当前窗口的任意菜单项(不论其所在的菜单是否被展开),例如按“Ctrl+O”可以直接选中(尚未打开的)文件菜单中的“打开(O)... Ctrl+O”菜单项,从而打开对应的“打开”对话框
若按某菜单项会弹出一个对话框,则一般应在该菜单项名后加上(由3个句点字符组成的)省略号“...”。
在应用程序中一般还可以按鼠标右键弹出一个带编辑和属性等功能的浮动式菜单。
菜单项和其他所有资源一样,都有一个ID(IDentifier标识符),通常是以下划线分割的大写字母组成的符号常量。在VC中,一般不需要直接编写符号常量的宏定义,而是由资源编辑器代劳。
2.缺省菜单
用MFC应用程序向导建立应用程序时,若选择的是单文档或多文档类型,而不是基于对话框类型,则会自动建立预定义的菜单条。
单文档应用程序只有一种菜单条,缺省时含“文件”、“编辑”、“查看”、“帮助”4个下拉式菜单,ID为IDR_MAINFRAME
对多文档应用程序有两种菜单条:
主框架菜单:在程序刚启动或没有任何文档子窗口时显示,缺省时含“文件”、“查看”、“帮助”3个下拉式菜单,ID也为IDR_MAINFRAME
文档菜单:在有文档子窗口时显示,缺省时含“文件”、“编辑”、“查看”、“窗口”、“帮助”5个下拉式菜单(增加了一个“窗口”下拉菜单),ID为IDR_AppNameTYPE,例如IDR_TestTYPE
在MFC类库中,由CMenu类支持菜单,该类是直接从CObject的类派生的:
CObject→CMenu
但是在MFC编程中一般不直接使用该类。
为了演示编辑过程,用MFC应用程序向导创建一个名为Student的单文档应用程序(其余选项全用缺省的,这只需在对话框的“应用程序类型”页中选择“单文档”后按“完成”钮即可)。
编译连接运行后的结果如下图所示:
3.菜单编辑
在应用程序设计中,一般需要对自动产生的缺省菜单进行编辑(修改/添加/删除)。在菜单编辑器中,可以添加(下拉式)菜单,在菜单中添加菜单项,为菜单项设置ID、名称文本串、访问键、快捷键、提示文本串和其他属性。
注意:在编程过程中,对VC的任何操作,都可以取消和恢复:
按Ctrl+Z或选“编辑\撤销”菜单项或单击工具条中的钮,可取消前一次的操作;
按Ctrl+Y或选“编辑\重复”菜单项或单击工具条中的钮,可重复前一次的操作。
1)菜单编辑器
打开菜单编辑器:
在VC左中部的项目工作区中选“资源视图”页(如果没有,可以选“视图\资源视图”菜单项或按“Ctrl+Shift+E”组合键)
单击“Student”项左边的+号框,展开各个资源文件的列表(此时只有一个文件Student.rc);单击其中“Student.rc”项左边的+号框,展开各类资源的树形列表;单击其中“Menu”项左边的+号框,展开所有的菜单资源的ID列表
双击要编辑的菜单资源的ID(此时只有一个IDR_MAINFRAME),则VC会在中部的编辑区打开菜单编辑器及对应的菜单资源供你编辑(参见下图)
菜单编辑窗口
编辑菜单和菜单项时,需要使用属性窗口
属性窗口:
打开:选“视图\其它窗口\属性窗口”菜单项或按“Alt+Enter”组合键,打开属性窗口,它通常位于VS窗口的左边,
文档评论(0)