版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏16.1菜单及其相关资源的使用菜单是Windows与用户交互的标准接口之一,Windows的大多数应用程序都提供了菜单操作。当一个菜单项被选中时,它发出一个命令消息,从而引发相应的消息处理函数的执行。6.1菜单及其相关资源的使用菜单是Windows与用户交2对策论凸连续对策和凹连续对策3对策论凸连续对策和凹连续对策46.1.3菜单消息MFC程序可以处理两种菜单消息:WM_COMMAND:为菜单命令消息,当选择菜单项、工具栏按钮或加速键之一会发出菜单命令消息,MFC依据一定的消息传递途径将消息传递给相应的处理函数进行处理,如果在消息传递途径的消息映射表中找不到相应的处理函数,该菜单项或按钮会被禁止使用。UPDATE_COMMAND_UI:为菜单更新消息,处理菜单状态的动态变化。如希望根据程序的执行状态,激活或禁用某些菜单项,设置选中标记,或更改菜单项文字等,就要定义这一消息处理函数。6.1.3菜单消息MFC程序可以处理两种菜单消息:WM_56.1.4菜单命令消息的处理定义好菜单项及其ID后,就需要为菜单命令添加响应函数。实现方法是借助ClassWizard,在需要响应菜单命令的类的消息映射表中增加一个入口,即定义一个命令消息ON_COMMAND宏。下面就以为“圆形”菜单命令项添加WM_COMMAND消息处理函数为例,讲解处理菜单消息的实现过程。(具体内容请参照本书)6.1.4菜单命令消息的处理定义好菜单项及其ID后,就需66.1.5菜单更新消息的处理一般情况下,菜单项具有不止一种状态,经常需要根据应用的内部状态来对菜单项作相应的改变。(具体内容请参照本书)6.1.5菜单更新消息的处理一般情况下,菜单项具有不止一76.1.6为菜单项设置快捷键快捷键的主要作用就是在选择菜单命令时,不用鼠标而用事先定义的组合键。如在Word软件中,用户可以使用“Ctrl+C”组合键复制文本,而使用“Ctrl+V”组合键粘贴文本。这样做的好处就是熟练操作应用程序的用户可以不用鼠标,用键盘直接同应用程序实现交互。下面就对程序“Ch6Demo1”新创建的菜单项“圆形”和“矩形”分别添加快捷键“Ctrl+Y”、“Ctrl+J”。6.1.6为菜单项设置快捷键快捷键的主要作用就是在选择菜单86.1.7弹出菜单的创建与使用弹出菜单一般在单击鼠标右键时出现,在应用程序工作区域上面处于自由浮动状态,也称为上下文菜单。与下拉菜单的最大不同是,弹出菜单需要用户手工编程动态加载。下面就为前面创建的“Ch6Demo1”程序创建一个绘图操作的弹出菜单,在单击鼠标右键时,菜单弹出,菜单显示的内容与“绘图”下拉菜单完全相同。6.1.7弹出菜单的创建与使用弹出菜单一般在单击鼠标右键时96.2工具栏的使用工具栏是一个包含一个或多个命令按钮的窗口,一般情况下附着在窗口客户区上方菜单栏下面,也可作为一个浮动的小窗口。工具栏为菜单命令提供可视化的快捷操作方式,模拟大部分的菜单行为。6.2工具栏的使用工具栏是一个包含一个或多个命令按钮的窗106.2.1工具栏的创建在使用MFCAppWizard创建基于文档/视图结构的MFC应用程序项目时,如前面创建的SDI程序“Ch6Demo1”,在应用向导的MFCAppWizardStep4的时候,默认选中了“Dockingtoolbar”,(具体内容请参照本书)6.2.1工具栏的创建在使用MFCAppWizard创116.2.2编辑工具栏创建了工具栏后,就需要编辑工具栏资源。工具栏资源由一组按钮组成,每个按钮是一个16色位图图标,工具栏编辑器提供一个简单的位图编辑器,点击某个图标即可编辑它。6.2.2编辑工具栏创建了工具栏后,就需要编辑工具栏资源126.2.3工具栏命令处理与菜单命令项相同,MFC程序可以处理两种工具栏按钮消息:命令消息WM_COMMAND和更新消息UPDATE_COMMAND_UI。通过ClassWizard可以方便地为工具按钮添加WM_COMMAND和UPDATE_COMMAND_UI消息映射和消息处理函数。其实现过程与菜单项完全相同,6.2.3工具栏命令处理与菜单命令项相同,MFC程序可以136.2.4工具栏类CToolBar的简单介绍在MFC中,CToolBar类包揽了创建工具栏的主要工作。类CToolBar提供了带有位图按钮和可选分隔符的工具栏。工具栏按钮可以是下压式按钮、复选按钮或单项按钮。CToolBar对象通常被嵌入派生于类CFrameWnd或CMDIFrameWnd的框架窗口对象的成员。6.2.4工具栏类CToolBar的简单介绍在MFC中,146.3状态栏的使用状态栏是一个水平长条,位于应用程序主窗口的底部。它可以分割成几个窗格,用来显示多组信息。6.3状态栏的使用状态栏是一个水平长条,位于应用程序主窗156.3.1状态栏的创建在使用MFCAppWizard创建基于文档/视图结构的MFC应用程序项目时,如前面创建的SDI程序“Ch6Demo1”,在应用向导的MFCAppWizardStep4的时候,默认选中了“Initialstatusbar”,(具体内容请参照本书)6.3.1状态栏的创建在使用MFCAppWizard创166.3.2状态栏编程本节也将通过具体的实例讲解状态栏编程的过程。所实现的目标是在“Ch6Demo1”工程已有状态栏的基础上,添加一个状态栏窗格,用于显示系统当前时间,时间精确到秒,即每秒要更新一次。(具体内容请参照本书)6.3.2状态栏编程本节也将通过具体的实例讲解状态栏编程176.3.3状态栏类CStatusBar的简单介绍在MFC中,CSta
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年秋季开学初中军训意义价值讲座课件
- 2026年秋季开学幼儿园停止间转法训练课件
- 2026秋部编版一年级上册语文第三单元单元培优卷(A卷)
- 新能源汽车产业企业盈利能力比较分析
- 人工智能驱动新质生产力构建的机遇与挑战分析
- 基于场景创新的人工智能商业价值实现机制研究
- 每股收益驱动因子的多维度分解与实证分析
- 机器学习算法的理论基础及其优化应用研究
- 未来智慧城市发展模式研究
- 2026 年护理质控案例撰写与汇报技巧培训
- 2026年杭州青少年活动中心招聘游艺项目操作员5人考试备考试题及答案详解
- 租房合同协议书(2026版)
- 2026年新(高级)政工师理论考试题库及答案
- 校园保险策划方案
- 干部履历表(中共中央组织部2015年制)
- 中国恶性胸腔积液诊断与治疗专家共识课件
- 网络发展与我国意识形态安全
- 医疗废物管理PPT演示课件
- 过程能力分析报告(图表)
- 混凝土部分多选题1~100附有答案
- 路基路面工程电子教案
评论
0/150
提交评论