图3-2 以文本方式打开资源文件
? 方法3:
? 选“文件\\打开\\文件”菜单项,或按工具条上的打开文件按钮
组合键,弹出“打开文件”对话框。
? 在“打开文件”对话框中,先选中*.rc文件,再选“打开”按钮右端的钮打
开下拉式列表,选中其中的“打开方式(W)...”项。
? 在弹出的“打开方式”对话框中,选中“源代码(文本)编辑器”项,按“确定”
关闭对话框,参见图3-2 b)。
作为参考,下面给出由MFC应用程序向导自动生成的Student程序的默认资源头文件(Resource.h)和菜单资源文本的内容(位于资源脚本文件Student.rc中)。
,或按“Ctrl+O”
2.资源头文件
VC在资源头文件Resource.h中定义各种ID符号常量,这些定义由MFC应用程序向导或资源编辑器自动生成,一般不需要自己手工修改。
下面是Student程序的初始资源头文件的内容: //{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file. // Used by Student.rc //
#define IDD_ABOUTBOX
100 100 128 130
#define IDP_OLE_INIT_FAILED #define IDR_MAINFRAME #define IDR_StudentTYPE
// 新对象的下一组默认值 //
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE
6
310
#define _APS_NEXT_CONTROL_VALUE #define _APS_NEXT_SYMED_VALUE
1000 310 32771
#define _APS_NEXT_COMMAND_VALUE #endif #endif
2.资源脚本文件
在MFC项目中,用资源脚本文件“项目名.rc”(后缀rc = resource,资源)来描述程序的各种资源,包括:文本、图标、位图、工具栏、菜单、快捷键、对话框、版本、设计信息、字符串表等资源。
下面是Student程序的资源脚本文件Student.rc中的开始和默认菜单资源部分: //Microsoft Visual C++ 生成的资源脚本。 //
#include \……
///////////////////////////////////////////////////////////////// // // 菜单 //
IDR_MAINFRAME MENU BEGIN
POPUP \文件(&F)\BEGIN
MENUITEM \新建(&N)\\tCtrl+N\
ID_FILE_NEW
MENUITEM \打开(&O)...\\tCtrl+O\ID_FILE_OPEN MENUITEM \保存(&S)\\tCtrl+S\
ID_FILE_SAVE
MENUITEM \另存为(&A)...\ID_FILE_SAVE_AS MENUITEM SEPARATOR
7
MENUITEM \打印(&P)...\\tCtrl+P\ID_FILE_PRINT MENUITEM \打印预览(&V)\
ID_FILE_PRINT_PREVIEW
MENUITEM \打印设置(&R)...\ID_FILE_PRINT_SETUP MENUITEM SEPARATOR
MENUITEM \最近的文件\ MENUITEM SEPARATOR MENUITEM \退出(&X)\
ID_APP_EXIT
ID_FILE_MRU_FILE1,GRAYED
END
POPUP \编辑(&E)\BEGIN
MENUITEM \撤消(&U)\\tCtrl+Z\ID_EDIT_UNDO MENUITEM SEPARATOR
MENUITEM \剪切(&T)\\tCtrl+X\MENUITEM \复制(&C)\\tCtrl+C\ MENUITEM \粘贴(&P)\\tCtrl+V\
ID_EDIT_CUT ID_EDIT_COPY ID_EDIT_PASTE
END
POPUP \视图(&V)\BEGIN
MENUITEM \工具栏(&T)\ MENUITEM \状态栏(&S)\
ID_VIEW_TOOLBAR ID_VIEW_STATUS_BAR
END
POPUP \帮助(&H)\BEGIN
MENUITEM \关于 Student(&A)...\ID_APP_ABOUT
END
END
3.2 设计菜单
在应用程序设计中,一般需要对自动产生的默认菜单进行编辑(修改/添加/删除)。在
8
菜单编辑器中,可以添加(下拉式弹出)菜单,在菜单中添加菜单项,为菜单项设置ID、标题串、访问键、快捷键、提示文本串和其他属性。
注意:在编程过程中,对VC的任何操作,都可以取消和恢复: ? 按Ctrl+Z或选“编辑\\撤销”菜单项或单击工具条中的? 按Ctrl+Y或选“编辑\\重做”菜单项或单击工具条中的
钮,可取消前一次的操作; 钮,可恢复前一次的操作。
3.2.1 菜单设计的步骤与实例
本小节先给出菜单设计的一般步骤与过程,然后创建一个名为Student的传统单文档界面MFC应用程序实例。在本章的后续内容中,将结合该例讲解使用IDE进行MFC菜单设计的具体方法和详细步骤。
1.菜单设计的步骤
普通菜单设计的主要步骤有:插入菜单、添加菜单项、键入包含访问键(和加速键指示串)的标题串、修改菜单项的ID、设置提示串、(联接加速键、添加图标资源和代码、)添加菜单项响应、编写菜单事件处理的代码,参见图3-3(其中粗体部分为重点步骤)。
打开菜单资源 插入菜单 添加菜单项 设置菜单属性 [联接加速键] [添加图标] 添加菜单响应 打开资源视图 选中后一菜单 按回车键 打开属性窗口 展开Menu项 按Insert键 双击菜单ID 输入菜单名和访问键 键入含访问键(&大写英文字母)[、省略号和加速键指示串]的标题串 修改菜单项ID 双击菜单ID 修改ID 输入提示串 ?? 展开Accelerator资源项 添加Bitmap资源项 选中一菜单项后按鼠标右键 按“添加编辑”钮 选择菜单项ID、修饰符和(虚拟)键 绘制位图 编写代码 选“添加事件处理程序”菜单项 选择消息类型 选中对应的类 编写菜单事件处理代码 图3-3 菜单设计的主要步骤
2.菜单设计的实例
为了演示菜单的设计与编辑过程,我们用MFC应用程序向导创建一个(类似于2.4.2
9
中第3部分的Test程序的)具有传统界面的单文档MFC应用程序Student,其运行结果如图3-4所示。
a) 初始时
b) 完成菜单设计后
图3-4 Student程序的运行结果
3.2.2 菜单编辑器和属性窗口
下面介绍在设计菜单中要用到的菜单编辑器、属性窗口和若干常用菜单属性,参见图3-5。
图3-5 菜单编辑窗口
1.打开菜单编辑器
? 在VC左中部的项目工作区中选“资源视图”页(如果没有,可以选“视图\\其他窗
口\\资源视图”菜单项或按“Ctrl+Shift+E”组合键),参见图3-5的左部。 ? 单击“Student”项左边的+号框,展开各个资源文件的列表(此时只有一个文件
Student.rc);单击其中“Student.rc”项左边的+号框,展开各类资源的树形列表;单击其中“Menu”项左边的+号框,展开所有的菜单资源的ID列表。
说明:如果资源头文件或资源脚本文件已经被打开,则在展开“Student.rc”项左边
10
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库03界面编程1-菜单(2)在线全文阅读。
相关推荐: