第八课——菜单工具栏和状态栏
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第八课——菜单工具栏和状态栏相关的知识,希望对你有一定的参考价值。
一、菜单
1. 关键点
- 菜单系统设计的规则:菜单项文本的格式、助记符等
- 符号&:用来指定后面的字符是一个助记符
- 顶层菜单:可以是一个简单的菜单命令,也可以是下拉菜单
- 用菜单编辑器添加和修改菜单项
- CMenu类:用来处理菜单的一个MFC类
2. 切换应用程序菜单
效果:在两个菜单资源间切换
为CMainFrame类添加一个CMenu类型的成员变量m_NewMenu
两个CMenu成员函数的妙用:Detach、LoadMenu
- Detach:使菜单对象与菜单句柄分离
- LoadMenu:装载菜单资源,若菜单对象的句柄已经创建,则会发生运行时错误
- CWnd类的成员函数SetMenu:设置应用程序的菜单
3. 使用键盘快捷键
效果:为上面两个菜单(资源)定义键盘快捷键,使菜单项和快捷键联用
- 在“ResourceView选项卡”→双击Accelerator结点→双击加速键列表的最下端的空行
4. 菜单的编程控制
- 需求性分析:让用户自己定制菜单,所谓编程控制,即在程序中进行控制
- 程序运行时处理有关菜单的操作:创建菜单、装入菜单、删除菜单项、设置菜单项的状态等
上面的这些操作都可以用MFC菜单类CMenu来实现,举例:
- CMenu类的CreateMenu和CreatePopupMenu函数分别用来创建一个菜单或子菜单框架
- CMenu类的LoadMenu函数可将菜单资源装入应用程序中
- CMenu类的AppendMenu或InsertMenu函数可添加一些菜单项
- 还有许多函数,譬如重新设置应用程序菜单、删除指定的菜单项等等。
5. 使用快捷菜单
快捷菜单实现函数:CMenu::TrackPopupMenu
使用上面的函数可以创建快捷菜单
右击会发送WM_CONTEXTMENU通知消息,故快捷菜单是通过其映射函数实现的
二、工具栏
以上是关于第八课——菜单工具栏和状态栏的主要内容,如果未能解决你的问题,请参考以下文章