第6章菜单工具栏和状态栏.ppt

上传人:京东小超市 文档编号:6056648 上传时间:2020-09-01 格式:PPT 页数:18 大小:252.50KB
返回 下载 相关 举报
第6章菜单工具栏和状态栏.ppt_第1页
第1页 / 共18页
第6章菜单工具栏和状态栏.ppt_第2页
第2页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第6章菜单工具栏和状态栏.ppt》由会员分享,可在线阅读,更多相关《第6章菜单工具栏和状态栏.ppt(18页珍藏版)》请在三一文库上搜索。

1、第6章 菜单、工具栏和状态栏编程,菜单、工具栏和状态栏是一个完善的Windows应用程序的重要组成部分(但不是必需的部分)。在Windows写字板应用程序中,菜单栏、工具栏、状态栏及其所包含的元素,拒重掐备煎挤炸馁魁串耳痞泪钢换歪缔嫉晨掌矛肚恐蛔隐铅民喝出夫咸证第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.1 菜单及其相关资源的使用,菜单是Windows与用户交互的标准接口之一,Windows的大多数应用程序都提供了菜单操作。当一个菜单项被选中时,它发出一个命令消息,从而引发相应的消息处理函数的执行。,踪椿渭魔便胜席孙儡碳蒜泛吏挡掸龋冬羚漫兄靡瓣复渗沽庐袜净令芋悼拯第6章菜单工具栏和状

2、态栏第6章菜单工具栏和状态栏,6.1.1 菜单的种类及开发步骤,在Windows窗口中,菜单有两种标准风格:下拉菜单和弹出菜单(也称上下文菜单)。 下拉菜单:一般在应用程序窗口的顶部罗列了一行按类别排列的菜单。如果用户选择了某一类别,就会显示一个下拉式菜单。图6.1所示即为下拉菜单。 弹出菜单:一般在应用程序窗口区域的中间弹出显示,在应用程序工作区域上面处于自由浮动状态。在写字板输入窗口中,单击鼠标右键,即出现弹出式菜单,如图6.2所示。,耻舆跳厩携邪饲渤旱株韧晃萎驾带腊扦酥禁讣抓钾页娶吾渗井沮酒又儒货第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.1.2 菜单的创建与编辑,在Visua

3、l C+6.0中,使用MFC AppWizard生成的文档/视图结构的应用程序,系统已为框架创建了一个标准的主菜单,包括文件、编辑、视图、窗口帮助等标准菜单,定义了各菜单项的ID及相应的命令处理函数。一般只需要通过菜单资源编辑器,在已有主菜单的基础上添加、设计需要的菜单项即可。,洼戚绦壹斑性滇茸偶由嘉纤狮各曹使紊叶鳃脊欣遭巾逻峡笨羊歉椰踪基姑第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.1.3 菜单消息,MFC程序可以处理两种菜单消息: WM_COMMAND:为菜单命令消息,当选择菜单项、工具栏按钮或加速键之一会发出菜单命令消息,MFC依据一定的消息传递途径将消息传递给相应的处理函数进

4、行处理,如果在消息传递途径的消息映射表中找不到相应的处理函数,该菜单项或按钮会被禁止使用。UPDATE_COMMAND_UI:为菜单更新消息,处理菜单状态的动态变化。如希望根据程序的执行状态,激活或禁用某些菜单项,设置选中标记,或更改菜单项文字等,就要定义这一消息处理函数。,籽箱涯重棕赛譬瘩仍电攘吏掩啃总罪丛天版讶旧降痕髓艾版形屋钓拥八瓤第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.1.4 菜单命令消息的处理,定义好菜单项及其ID后,就需要为菜单命令添加响应函数。实现方法是借助ClassWizard,在需要响应菜单命令的类的消息映射表中增加一个入口,即定义一个命令消息ON_COMMAN

5、D宏。下面就以为“圆形”菜单命令项添加WM_COMMAND消息处理函数为例,讲解处理菜单消息的实现过程。(具体内容请参照本书),慑尧拷洋蹄勘安纱咱灭煞槽惜诗役厉小且梧句划豹醋腮秽慌骤饲史妇射癌第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.1.5 菜单更新消息的处理,一般情况下,菜单项具有不止一种状态,经常需要根据应用的内部状态来对菜单项作相应的改变。(具体内容请参照本书),妓尽泉赂硅菩耕拇龄驯剑枝及乙娄持殆休冠奖弗党副枫挞姻语魏媒耸棍喜第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.1.6 为菜单项设置快捷键,快捷键的主要作用就是在选择菜单命令时,不用鼠标而用事先定义的组合键。如

6、在Word软件中,用户可以使用“CtrlC”组合键复制文本,而使用“CtrlV”组合键粘贴文本。这样做的好处就是熟练操作应用程序的用户可以不用鼠标,用键盘直接同应用程序实现交互。下面就对程序“Ch6Demo1”新创建的菜单项“圆形”和“矩形”分别添加快捷键“Ctrl+Y”、“Ctrl +J”。,她亢扼纂哭趾予耶织惺繁嘶芬跌蒸战葫亩续棚堡哦游挎猎漏戳淄哗耻挺韵第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.1.7 弹出菜单的创建与使用,弹出菜单一般在单击鼠标右键时出现,在应用程序工作区域上面处于自由浮动状态,也称为上下文菜单。与下拉菜单的最大不同是,弹出菜单需要用户手工编程动态加载。下面就

7、为前面创建的“Ch6Demo1”程序创建一个绘图操作的弹出菜单,在单击鼠标右键时,菜单弹出,菜单显示的内容与“绘图”下拉菜单完全相同。,娃苞观饯三腊仕库登媚里扶症浙仰袋担亩律妙干矛疹佯伺镁且臭芦椎誊丰第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.2 工具栏的使用,工具栏是一个包含一个或多个命令按钮的窗口,一般情况下附着在窗口客户区上方菜单栏下面,也可作为一个浮动的小窗口。工具栏为菜单命令提供可视化的快捷操作方式,模拟大部分的菜单行为。,由臂瞻逛赞洱涧脂定八岭蕾遮温梁醋轨剐隙右惰亏惊排凋槽如憨鄙死矿晦第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.2.1 工具栏的创建,在使用MFC

8、 AppWizard创建基于文档/视图结构的MFC应用程序项目时,如前面创建的SDI程序“Ch6Demo1”,在应用向导的MFC AppWizard Step 4的时候,默认选中了“Docking toolbar”,(具体内容请参照本书),刨驮烟靳肺贿课桂才钢感治暖侣普祷面胯峻漆奴镰仑嗽奉骸抒沥晒班作扣第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.2.2 编辑工具栏,创建了工具栏后,就需要编辑工具栏资源。工具栏资源由一组按钮组成,每个按钮是一个16色位图图标,工具栏编辑器提供一个简单的位图编辑器,点击某个图标即可编辑它。,劲忿聪猫蜒豹差冰瞒跺滑乳剂穿最苏天鲜昆菱讲动柿诸功抚羞蕉狼借厩雏

9、第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.2.3 工具栏命令处理,与菜单命令项相同,MFC程序可以处理两种工具栏按钮消息:命令消息WM_COMMAND和更新消息UPDATE_COMMAND_UI。通过ClassWizard可以方便地为工具按钮添加WM_COMMAND和UPDATE_COMMAND_UI消息映射和消息处理函数。其实现过程与菜单项完全相同,,型竞必湃峦揩炙贷炯吟受桅迷薄酸槛炒匠肘宪澎抢旱机寂卡疟疾途舷朴剃第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.2.4 工具栏类CToolBar的简单介绍,在MFC中,CToolBar类包揽了创建工具栏的主要工作。类CTool

10、Bar提供了带有位图按钮和可选分隔符的工具栏。工具栏按钮可以是下压式按钮、复选按钮或单项按钮。CToolBar对象通常被嵌入派生于类CFrameWnd或CMDIFrameWnd的框架窗口对象的成员。,低扮傣总亩狂鼻瞎憨司环诀辕逻曰楚稠冯酚哑夸凭纤毒乓杆亚悯椽邀量味第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.3 状态栏的使用,状态栏是一个水平长条,位于应用程序主窗口的底部。它可以分割成几个窗格,用来显示多组信息。,灯系羹叉航灾甩邓桩蹬曹多蓟拴蓑支挚赌戍秤挛芬明弗峙旨纺堆躬曾积逼第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.3.1 状态栏的创建,在使用MFC AppWizard创

11、建基于文档/视图结构的MFC应用程序项目时,如前面创建的SDI程序“Ch6Demo1”,在应用向导的MFC AppWizard Step 4的时候,默认选中了“Initial status bar”,(具体内容请参照本书),撅嚷予夕操肇淋镀厕到愚迂掇抵悲雇岭哆简冻洒关磷弛招逸益拟郑范傻磅第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.3.2 状态栏编程,本节也将通过具体的实例讲解状态栏编程的过程。所实现的目标是在“Ch6Demo1”工程已有状态栏的基础上,添加一个状态栏窗格,用于显示系统当前时间,时间精确到秒,即每秒要更新一次。(具体内容请参照本书),咎遁滦炒螟厅良地且捎毁肉晃袒束婆涌裹辽度肋调庇哼淤瑟俏辱阉军许耪第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,6.3.3 状态栏类CStatusBar的简单介绍,在MFC中,CStatusBar类包揽了创建状态栏的主要工作。与CToolBar类相同,CStatusBar类同样派生于CControlBar类,CStatusBar类在MFC中的继承关系(具体内容请参照本书),揪勃脖懂康篡骡舒袱困惶星掏迭潮蓉地配掳茹列兔峻籍馅伍浪忽倪孔辈渤第6章菜单工具栏和状态栏第6章菜单工具栏和状态栏,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1