access菜单和工具栏知识.doc_第1页
access菜单和工具栏知识.doc_第2页
access菜单和工具栏知识.doc_第3页
access菜单和工具栏知识.doc_第4页
access菜单和工具栏知识.doc_第5页
免费预览已结束,剩余27页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

菜单和工具栏知识(1)-修改用户界面的工具有两种自定义菜单栏和工具栏的工具:共享“自定义”对话框和Visual Basic。虽然,在每个Office应用程序之间,“自定义”对话框仍有很小的区别,但是用于修改菜单栏和工具栏的可编程对象在所有的应用程序中都是相同的。本节讲述了“自定义”对话框和共享可编程对象,以及何时和怎样使用这些工具。“自定义”对话框Office应用程序(包括Outlook)提供了相同的接口“自定义”对话框来对Visual Basic应用程序进行设计时刻更改。对菜单栏和工具栏的设计时刻更改是指在应用程序运行前的任何更改。这包括添加、删除、移动、恢复菜单部件和工具栏控件,以及设置它们在运行时条件改变后不会改变的属性。这一节讨论怎样使用“自定义”对话框和VB代码来修改菜单栏和工具栏。在两种技术都可作同样修改的场合下,使用“自定义”对话框能更快和更容易地完成设计时刻更改。显示“自定义”对话框在“视图”菜单里,指到“工具栏”,然后单击“自定义”。以下图示是PowerPoint 中“自定义”对话框里的“工具栏”一表。Microsoft Access,Microsoft Excel,和Microsoft Word和Microsoft PowerPoint一样,都在“自定义”对话框(含“工具栏”表,“命令”表和“选项”表)中提供了相同的控件,但是前三种应用软件还在“工具栏”表和“命令”表中包含了其他一些元素,专门用于这些软件本身的自定义。这些元素将在下面的段落中进行介绍。Microsoft Access “工具栏”表包含一个“属性”按钮,用来显示“工具栏属性”对话框。使用这个对话框来设置内制属性或自定义菜单栏和工具栏。关于使用“工具栏属性”对话框的详细说明,请参考“Building Applications with Microsoft Access 97”的第一章。Microsoft Excel “工具栏”表包含一个“附加”按钮,用来显示“附加工具栏”对话框。用户可以用这个对话框把菜单栏从应用程序的工作区拷贝到活动工作区。要作更多的了解,请参考本章后面“用户界面的更改范围”一节的内容。Microsoft Word “命令”表中包含一个“保存”栏,用来指定用户在“自定义”对话框中生成的设计时刻更改的保存位置。当单击“工具栏”表中的“新建”按钮时会出现“新建工具栏”对话框,其中包含有“生成”工具栏,供该对话框使用。要做更进一步的了解,请参考本章后面“用户界面的更改范围”一节的内容。“命令”表还包含一个“键盘”按钮,用于显示“自定义键盘”对话框;用户能用它来给任何宏或内置Word 命令指定快捷键。当用户在任何Microsoft Office 应用程序中打开“自定义”对话框后,就可以按同样的步骤来修改任何内置或自定义的菜单和工具栏,步骤如下。 1. 在“工具栏”对话框的“工具栏”一表中,用户可以选择出要显示和修改的菜单栏或工具栏,在它们的名字前面的复选框里打上钩。新创建的菜单栏或工具栏会自动显示出来 2. 单击任何一个菜单项(包括菜单和子菜单的标题)或者是工具栏控件,把它选中。当打开“自定义”对话框的时候,和控件相关联的命令是不能运行的。 3. 在选定的项或控件上按下鼠标右键,显示出快捷菜单,该菜单中包含了可使用的自定义选项。菜单命令和工具栏按钮的选项包括重新设置命令;删除项或控件;更改它的名字;指出它是否有名字及图标,或是两者都有;修改它的图标;以及设置它开始一组 (也就是说,在它的上方或下方有一条线)。 注释 某些内置的命令或控件不能使用这些选项中的一种或几种;在快捷菜单上不能使用的选项是阴暗显示。当“自定义”对话框打开时,用户可以通过拖放来重新安排项和控件的顺序,还可以从“命令”表里添加新的项和控件。要做更多的了解,请参考本章后面“菜单系统的设计时刻修改”以及“工具栏的设计时刻修改”两节里的有关步骤。Visual Basic 通常,要创建或修改引进了Visual Basic程序的Microsoft Office应用程序的用户界面,应当使用“自定义”对话框。用户通过“自定义”对话框对用户界面所做的更改叫做设计时刻更改。用户也可以在Visual Basic代码中使用共享的Microsoft Office对象模型的命令栏部分,以此来添加和修改菜单及工具栏:高级对象是CommandBars集合,在所有的Microsoft Office应用程序中由CommandBars属性返回。每一个菜单栏、快捷键菜单,以及工具栏都可以用该集合中的某个CommandBar对象来表示。每一个CommandBar对象包括一个CommandBarControls集合;在菜单栏或工具栏上的每个控件都可以用几个这样的集合来表示。要了解有关CommandBars集合、它所包含的所有对象,以及这些对象的属性和方法的更多内容,请参考“命令栏概述”和“帮助”中相应的对象、属性和方法主题。用户也可以编写代码,运行一次就能创建或更改菜单栏或工具栏的元素;实际上,这些代码模拟了在“自定义”对话框中所进行的设计时刻更改。但是在某些Microsoft Office应用程序中,可能要求用户将这类Visual Basic 代码和“自定义”对话框组合起来去设计Visual Basic应用程序。在以下一些常见场合,用户必须使用代码和容器应用程序界面的组合: 如果用户不能使用“自定义”对话框来创建一个新的菜单栏时,就需要使用Visual Basic来完成创建菜单栏的任务。在Visual Basic中建好菜单栏后,可以使用“自定义”对话框来设计该菜单栏中的各个菜单。 如果用户的容器应用程序不能在“自定义”对话框打开时,显示内置或自定义的快捷菜单,用户必须使用Visual Basic代码去修改这些快捷菜单。 如果用户的容器应用程序不能提供用于在工具栏上添加或修改文本框、下拉式列表框,或者组合框时,用户必须使用Visual Basic 代码来添加和设计这些控件。 用户也可以编写存在于Visual Basic应用程序中的代码,该应用程序在运行时对菜单系统进行修改(例如,用户可以编写在某种条件下禁用某菜单中的某一命令的代码,或者根据用户的动作给某个菜单栏添加一个菜单)。在用户的Visual Basic 应用程序运行时,用户代码产生的更改叫做运行时刻更改。菜单和工具栏知识(2)-用户界面的更改范围关于在何处对用户界面进行更改以及怎样存储更改,每一个Microsoft Office应用程序使用略微不同的规则。理解怎样才能控制更改的范围是非常重要的,因为它决定了用户的Visual Basic 应用程序显示用户自定义界面的能力。Microsoft Access 下面内容讲述了如何在Microsoft Access中管理和存储菜单栏和工具栏。要了解更多有关使用Microsoft Access菜单栏和工具栏的内容,请参考“Building Applications with Microsoft Access 97”的第一章。可以通过三种方法,在用户自定义的应用程序中使用自定义菜单栏和快捷菜单: 附加到窗体或报表。无论用户在什么时候打开窗体或在打印预览里显示报表,Microsoft Access 都会显示用户的自定义菜单栏。要做更进一步了解,请参考“帮助”里的“MenuBar 属性”。 作为快捷菜单附加到窗体、窗体控件,或报表上。无论用户什么时候在附加窗体、控件或报表上单击鼠标右键,Microsoft Access 都会显示出用户的自定义菜单。要做更进一步了解,请参考“帮助”中的“ShortCutMenuBar属性”。 作为用户应用程序的共用菜单栏。除了已经有自己的自定义菜单栏的窗体或报表之外,Microsoft Access会在所有的窗口里显示用户的自定义菜单栏。(窗体或报表的自定义菜单栏使共用菜单栏无效。)用户可以通过“启动”对话框来指定在整个应用中使用的菜单栏。用户可以在一个应用程序中使用一个或几个自定义工具栏。创建需要的工具栏,然后使用适当的方法显示该自定义工具栏: 如果用户的应用程序中只有一个自定义工具栏,可使用“工具栏”命令(在“视图”菜单中)来显示它;用户的应用程序在每次启动时都会显示出该工具栏。 如果用户的应用程序中包含用于不同窗体或报表的不同的自定义工具栏,可以在每个窗体或报表的“工具栏”属性里指定一个用于该窗体或报表的工具栏。 注释 没有必要为报表的激活或失活事件所创建的事件过程显示和隐藏工具栏,这在以前版本的Microsoft Access 中是必须的。设置自定义工具栏的“工具栏”属性,当用户的窗体打开时能够自动隐藏内置的“窗体视图”工具栏,而当用户关闭窗体或切换到另一个窗体时能够隐藏自定义工具栏。 如果用户需要的窗体或报表带有的自定义工具栏超过一个,或者,如果用户想隐藏或显示内置的Microsoft Access工具栏,可以在Visual Basic 程序代码中使用对象CommandBar的Visible属性,或者在宏中使用ShowToolbar操作来隐藏或显示工具栏。 如果用户想让应用程序只显示自定义工具栏,可以单击“启动”命令(在“工具”菜单中)然后清除“允许内置工具栏”旁边复选框内的对钩,这就隐藏了所有的内置工具栏。 Microsoft Excel 用户可以把自定义工具栏和工作区或工作簿一起保存。当用户从Microsoft Excel退出时,在工作区中的工具栏会自动地保存在文件Username8.xlb中(其中的“Username”是Windows95当前登录的用户名)。如果用户没有登录,文件存为Excel8.xlb。在工作簿里的工具栏保存在工作簿文件中。工作簿级的菜单栏和工具栏使用户能够方便地为自定义的应用程序(例如,一个加载应用程序)创建一个美观的用户界面、分配自定义工具栏按钮和它们支持的过程。如果用户打算分配带有一个自定义应用程序的自定义工具栏,就应该把该工具栏附加到包含那个应用程序的工作簿上,使得工具栏和应用程序那个保存在同一个文件里。将菜单栏或工具栏从工作区移动到工作簿 1. 如果“自定义”对话框尚未打开,用鼠标指到“视图”菜单里的“工具栏”上,然后单击“自定义”。2. 在“工具栏”表上单击“附加”按钮。显示出“附加工具栏”对话框。3. 在“自定义”对话框里,单击想要复制到活动工作簿的菜单栏或工具栏的名字。 4. 单击“复制”。 所复制的菜单栏或工具栏的名字就出现在工作簿框中。用户可以删除原始的工作区级的菜单栏或工具栏,单击“自定义”对话框中的“工具栏”表,选择要删除的菜单栏或工具栏的名字,然后单击“删除”按钮。如果用户没有删除菜单栏或工具栏在工作区的版本,还可以对其进行更改而不会影响到工作簿中保存的版本。如果用户对工作区中的菜单栏或工具栏进行了更改,而且想更新工作簿中的版本使它同工作区的版本保持一致,可以再次将工作区中的版本复制到工作簿里,替换工作簿原来的版本。把菜单栏或工具栏复制到工作簿之后,该菜单栏或工具栏只有在用户打开工作簿之后才可以使用。菜单栏或工具栏在工作簿中的版本不但保留着它们的名字和内容,而且还保留着为菜单项或工具栏控件指定的代码;菜单栏或工具栏的位置、大小以及形状;它在屏幕上的显示位置;和它是处于显示状态还是隐藏状态。用户也可以删除菜单栏或工具栏的工作簿版本。删除菜单栏或工具栏的工作簿版本 1. 如果“自定义”对话框尚未打开,用鼠标指到“视图”菜单下的“工具栏”上,然后单击“自定义”。2. 在“工具栏”表上,单击“附加”按钮。 显示出“附加工具栏”对话框。3. 在工作簿框的“工具栏”内,单击想删除的菜单栏或工具栏的名字。 4. 单击“删除”按钮。 注释 不能使用Visual Basic把菜单栏或工具栏附加到工作簿上或是从工作簿中把它们删除。当用户打开包含一个或多个菜单栏或工具栏的工作簿时,Microsoft Excel 首先判断是否已经存在有一个同名的工作区菜单栏或工具栏。如果不存在,Microsoft Excel会创建一个新的工作区菜单栏或工具栏,并且把在工作簿里的版本复制过来。这样一来,用户得到了菜单栏或工具栏的最新副本,用户可以作许多变动:隐藏它,或者从工作簿级的副本那儿复制菜单项或控件,也可以向把菜单项项或控件复制到工作簿级的副本里去。没有办法对菜单栏或工具栏进行重命名,于是当工作簿再次打开时,工作区已经存在着与工作簿版本同名的菜单栏或工具栏,Microsoft Excel使用工作区的副本而不是将工作簿的版本重新进行装载。但是,当用户单击相应的菜单项项或控件时,打开的工作簿里的菜单栏或工具栏所支持的过程仍然能够运行。开发人员可以设计一个菜单栏或工具栏,然后把它附加到工作簿中。当用户打开工作簿时,就能使用该自定义菜单栏或工具栏了。用户既可以对它进行编辑,还能把菜单项项或控件从中移动到个人的菜单栏或工具栏里,这都不会影响保存在工作簿里的副本。当用户退出Microsoft Excel时,用户更改后的菜单栏和工具栏和工作簿文件一起保存。当用户再次启动Microsoft Excel时,编辑过的菜单栏或工具栏仍然可以使用;单击一个开发人员的菜单项或工具栏控件可以装载工作簿,其中包含了附加到那些菜单项或控件的过程。要生成新的工作簿菜单栏或工具栏,可以删除被编辑过的副本。Microsoft Word Word 在模板中保存自定义菜单和工具栏,这和它保存宏是一样的。当用户自定义一个菜单或创建一个新的工具栏时,更改默认地保存在Normal模板中,可以被共用也就是说,用户总能显示出一个保存在Normal模板的自定义工具栏,即使活动的文档是基于不同的模板的。一个保存在Normal模板之外的其他模板里的自定义工具栏可以在下面两种情况之一下使用:模板被附加到活动的文档上,或者模板按共用模板来装载(在“工具”菜单中,“模板和加载项”命令)。当用户把工具栏保存在文档里后,可以在文档本身处于活动状态时显示出工具栏。如果要使用一个带有自定义菜单和工具栏的Visual Basic 应用程序,就应该把菜单栏和工具栏保存在一个自定义的模板或文件内。因为每个用户都有自己的Normal 模板,所以Visual Basic程序不应该更改Normal 模板。如果自定义信息是在包含用户自己的应用程序的文档或模板里,那么当用户从该应用程序退出时,可以很容易地去掉自定义的菜单和工具栏。也就是说,当用户关闭了文档(如果该文档包含工具栏或者该文档所属的模板包含工具栏),或者卸载了该文档的模板,自定义的工具栏就不再使用了;只有加载的菜单和工具栏或者用户自定义的工具栏还保留着。如果同时有两个同名的自定义工具栏(例如,如果Normal模板和一个被装载的模板都有一个名为“自定义工具”的工具栏),那么两个工具栏都能列在“自定义”对话框中,可以被单独分别显示,也可以同时显示。在Visual Basic里,用户可以添加、自定义,或者删除在任何文档或模板里的菜单栏和工具栏。但是,由于CommandBars属性只用于Application对象,所以用户必须在进行更改之前事先为自己的更改设置好上下关系。同使用在“自定义”对话框里“命令”表中的“保存”命令相似,用户可以在Visual Basic中使用CustomizationContext属性来指定一个Document或者Template对象去表示要更改的文档或模板。用户在使用CommadBars属性之前必须设置CustomizationContext属性;它保证能返回对文档或模板的菜单栏和工具栏使用的集合的引用。要做更进一步了解,请参考本章后面“工具栏的设计时刻修改”一节的内容。Microsoft PowerPoint 自定义菜单栏或工具栏都和工作簿保存在一起。当用户从PowerPoint退出时,在工作簿里的工具栏被保存在文件Username.pcb(其中的“Username”是当前登录到Windows 95上的用户名)中。如果用户没有被登录,那么文件名是Powerpnt.pcb。因为一份演示文稿正在运行时,用户是看不到菜单栏和工具栏的,所以在PowerPoint中,自定义菜单栏和工具栏只能有限地对设计模式中有效的菜单栏和工具栏进行更改。用户可以使用“自定义”对话框或Visual Basic来修改自己的设计环境。如果用户的Visual Basic应用程序为正在设计的演示文稿引入了自定义界面,那就也必须使用Visual Basic来更改菜单和工具栏。当用户结束该应用程序时,比较好的做法是去掉用Visual Basic所做的更改。菜单和工具栏知识(3)-选择对用户界面进行最佳增强菜单是用户界面命令的列表,用户可以从中选择命令。菜单提供了一种方便且一致的方法对命令进行分组,并且向用户提供了使用它们的简便方式。执行相关任务的命令可以列在同一个菜单下,同时命令还可以进行分组(用线与其他的命令或命令组分隔开)。子菜单构成了下一级的组织结构,快捷菜单把一组相关的命令组织起来,用以完成一项专门的任务。用户能够为命令指定访问键,从而可以用键盘发命令,用户还能够为命令指定快捷键,从而更快地使用命令。另外,菜单比工具栏占用的空间要少,因为菜单中的各项只有在需要使用的时候才显示出来,并不需要在屏幕上分配专门的显示空间。另一方面,如果用户想快速地以图形方式使用命令,那最好还是使用工具栏。工具栏包含一些快捷,用来执行被频繁使用的命令。对表示某种特性设置(例如,加粗或倾斜格式)、可视化命令以及用鼠标点击执行的命令来说,使用工具栏较为理想。另外,当用户工作时,工具栏始终显示在屏幕上,而菜单只有在使用的时候才显示出来;在工具栏上找出某个特殊的按钮要比在菜单栏里找出某条命令容易得多。但是,如果要方便地使用键盘命令,或是想显示出命令的层次结构,抑或是可用的显示屏幕有限,那么最好使用菜单。如果需要演示用户的一组复杂的选项,那么用对话框比工具栏和菜单都要强。如果想在用户正在使用的数据的附近安置工具,那么最好的解决办法可能就是在工作表或文档里直接安置控件了。菜单和工具栏知识(4)-菜单系统每一个Microsoft Office 应用程序的菜单系统都是由完整的一套菜单以及菜单上的菜单项所组成的。一个菜单可以是主菜单、子菜单或是快捷菜单。一个菜单项通常是一条命令或是一个子菜单的标题。在本章中,“组件”这个术语一般指任何菜单或菜单项。菜单栏处在活动窗口的顶端,它显示出所有菜单的名称,菜单可以随时为应用程序所使用。也就是说,Microsoft Office 应用程序能够根据一次活动窗口的变化或一条Visual Basic指令相应地改变菜单栏的显示。例如,当用户在Microsoft Excel 中编辑图表时,包含一组用于图表环境的菜单的菜单栏会自动显示出来。一个菜单是菜单项的一张列表,菜单项在用户单击菜单栏上的菜单名时才出现(下拉)。一个子菜单是附加在另一个菜单(父菜单)旁边的菜单,靠近父菜单上某个子菜单标题。每个子菜单标题都有一个指向右边的箭头。用户可以给菜单或快捷菜单添加子菜单。当用户用鼠标指到父菜单上的子菜单标题时,就会显示出相应的子菜单。一个快捷菜单是包含了与某个专门命令有关的一组命令的浮动菜单。当用户在某个对象上点击鼠标右键时,就会显示出快捷菜单。自定义菜单系统的原则用户可以通过很多途径对Microsoft Office应用程序的菜单系统进行修改:可以创建新的菜单栏、在内置或自定义菜单栏中添加新的菜单、在内置或自定义菜单或子菜单中添加新的菜单项,而且还可以给菜单项指派宏。另外,用户也可以随时恢复到内置菜单系统的默认状态。添加自定义组件或修改内置组件每个Microsoft Office应用程序都带有自己的内置菜单系统。用户可以修改它的内置系统,也可以创建和修改自定义的菜单组件。如果用户添加或改变了较少数目的组件,那么对菜单栏、菜单或菜单项进行修改比较合适的。例如,如果用户只是想提供一个访问菜单的宏,那么可以在内置菜单里添加进一个菜单项,然后把宏链接到该菜单项。如果用户需要作更大范围的修改,最好创建一个新的完整组件。例如,如果用户想添加几个新菜单每个都包括几个新的菜单项那么创建一个包含所有新菜单的全新的菜单栏会比较合适一些。使用子菜单如果用户的菜单系统显得拥挤而且浏览困难,那么可以使用子菜单来有效地组织它们,并且通过减少每个时刻显示给用户的信息数量来增加Visual Basic应用程序的清晰度。例如,假定要创建一个包含了几个选项的菜单,如下图所示。可以用下面所示的任何一种方法来使用子菜单,都能显示出相同的菜单项。通过使用子菜单,可以连续地浏览一系列命令,而如果使用别的方式可能只好通过一连串的对话框才能完成这些命令。但是,如果需要创建较为复杂的一系列子菜单来演示一组命令,那么对话框是更好的解决办法。使用快捷菜单如果要让用户能够使用针对某个特定对象的命令,可以把此命令添加到该对象的内置快捷菜单中。在Microsoft Access里,可以创建自定义快捷菜单,并且在应用程序中把它们和对象关联起来。使用文本框、列表框和组合框虽然可以在Visual Basic应用程序的菜单、快捷菜单和子菜单里添加内置或自定义文本框、列表框和组合框,但是这类控件还是用在工具栏里比较好。在某些需要显示或返回一种简单设置的情况下,使用菜单上的文本框会很方便。在显示菜单的同时,列表框和组合框也显示出当前的设置。但是,一旦用户在框里选择了新值,菜单也就随之被关闭了(用户不能查看或是修改设置,必须再次打开菜单来确认)。如果要在菜单里添加内置文本框、列表框和组合框,须使用与添加内置命令相同的技术(参考本章后面的“添加命令和命令分组”一节的内容)。如果要添加自定义文本框、列表框和组合框,须使用和把它们添加到工具栏相同的技术(参考本章后面的“工具栏的设计时刻修改”一节的内容)。菜单和工具栏知识(5)-菜单系统的设计时刻修改菜单的设计时刻修改是指在应用程序运行前对菜单系统所进行的更改。包括添加、删除、移动和恢复菜单组件,以及设置菜单组件在运行时不随条件更改而变化的属性。添加自定义菜单栏如果要设计一组和当前Office应用程序的内置菜单栏或菜单栏有很大差别的菜单,需要创建一个新的菜单栏。这可以在Microsoft Access中使用“自定义”对话框,或者在Microsoft Excel、Word和owerPoint中使用Visual Basic 来实现。使用“自定义”对话框在Microsoft Access中,“自定义”对话框提供了一种添加自定义菜单栏的便利方法。在Microsoft Access中添加菜单栏 1. 如果“自定义”对话框尚未打开,用鼠标指到“视图”菜单中的“工具栏”上,然后单击“自定义”。 2. 在“工具栏”表中,单击“新建”按钮。 3. 在“工具栏名称”一栏内,键入新菜单栏的名字,然后单击“确定”。 出现一个该名字的浮动空菜单栏。4. 单击“属性”,显示“工具栏属性”对话框。 5. 在“类型”一栏内,单击“菜单栏”。 用户还可以在“工具栏属性”对话框中设置自定义菜单栏的其他属性。要做更进一步的了解,请参考“Building Applications with Microsoft Access 97”的第一章。这个新的菜单栏被添加到“工具栏”表的“工具栏”列表里。使用Visual Basic用户需使用CommandBars集合的Add方法来创建一个新的菜单栏;Add方法中的参数MenuBar决定了所创建的CommandBar 对象是否被显示成菜单栏。下面的例子创建了一个名叫“Custom Menu Bar”的新菜单栏。Set cstm = CommandBars.Add(Name:=Custom Menu Bar, Position:=msoBarTop, _MenuBar:=True, Temporary:=False)在Microsoft Excel、Word和PowerPoint里,必须使用Visual Basic 创建新的菜单栏。在Microsoft Access 中既可以用Visual Basic 也可以用“自定义”对话框。添加菜单用户可以向任何内置或自定义菜单栏中添加一个菜单。因为Microsoft Office 应用程序能够在不同的内容中显示不同的内置菜单栏,所以也可以在不只一个菜单栏中添加一条相同的命令,以此保证用户无论是在什么上下关系里都可以使用该命令。例如,在Microsoft Excel 中,用户可能想给每个菜单栏添加一个专门的Accounting菜单,于是公司里的雇员可以在任何工作表里运行相应的宏。在向菜单栏添加菜单时,用户可以为该菜单指定访问键;当显示菜单时,访问键下面加有下划线。注释 虽然Microsoft Office应用程序可以在“自定义”对话框的“工具栏”表中列出包含快捷菜单的工具栏,但是用户既不能直接向这些工具栏添加自定义快捷菜单,也不能从中删除内置的快捷菜单。但是,用户能够在快捷菜单上添加、删除或自定义菜单项。要做更多的了解,请参考本节后面的“添加和修改快捷菜单”的内容。使用“自定义”对话框“自定义”对话框为向内置或自定义菜单栏添加菜单提供了一种便利的方法。向菜单栏添加自定义菜单 1. 如果“自定义”对话框尚未打开,用鼠标指到“视图”菜单中的“工具栏”上,然后单击“自定义”。 2. 如果要进行修改的菜单栏没有显示出来,在“工具栏”表的“工具栏”一栏内该菜单栏名字旁边的复选框内打上对钩。 3. 在“命令”表中,在“类别”一栏内单击“新菜单”。 4. 将“新菜单”一项从“命令”栏拖到菜单栏中想添加菜单的地方。 在菜单栏中的“I”形条指出了在放开鼠标键时新菜单添加的位置。5. 在新菜单上单击鼠标右键,然后在“名字”栏中键入一个名字。在为该菜单设定的作为访问键的字母前面键入一个“&”符。 当单击该菜单的名字时,就显示出一个空菜单。要了解有关向新菜单中添加菜单项的内容,请参看本节后面“添加命令和命令分组”的内容。“自定义”对话框还为向内置或自定义菜单栏添加任何内置菜单的副本提供了一种快捷的方法。用户可以自定义副本中的命令而不会影响到原来的内置菜单。向菜单栏添加内置菜单的副本 1. 如果“自定义”对话框尚未打开,将鼠标指到“视图”菜单中的“工具栏”上,然后单击“自定义”。 2. 如果要进行修改的菜单栏没有显示出来,在“工具栏”表的“工具栏”一栏内该菜单栏名字旁边的复选框打上对钩。 3. 在“命令”表中,在“类别”一栏内单击“内置菜单”。 4. 将“内置菜单”一项从“命令”栏拖到菜单栏中想添加菜单的地方。在菜单栏中的“I”形条指出了在放开鼠标键时新菜单添加的位置。技巧 用户也可以打开包含了要被复制的菜单的菜单栏,然后按下“CTRL”,同时将该菜单从中拖到另一个菜单栏里,完成复制。使用Visual Basic用户需使用CommandBarControls集合中的Add方法来向CommandBar对象添加菜单,该对象表示某个菜单栏。在msoControlPopup里设置Add方法的Type参数指示所添加的控件用来显示一个菜单。显示菜单的控件叫做pop-up(弹出)控件。参数Before指示新菜单在原有菜单栏诸菜单中的位置。通过Add法设置对象CommandBarPopup的Caption属性,用于指定菜单的名称和访问键。以下这个Microsoft Excel的例子在工作表菜单栏的“窗口”菜单左边添加了一个名为“Accounting”的新菜单。Set cstmAccounting = CommandBars(Worksheet Menu Bar).Controls _.Add(Type:=msoControlPopup, Before:=9)cstmAccounting.Caption = &Accounting注释 用户在新菜单的名称里作为该菜单访问键的字母前面加一个“&”符。一旦添加好了菜单,当用户通过Controls(Index)引用该菜单时,可以在菜单名中使用“&”符,也可以不用。添加子菜单子菜单是附加在另一个菜单(父菜单)旁边,靠近某个菜单项(子菜单标题) 的菜单。用户可以给菜单、其他的子菜单和快捷菜单添加子菜单。当用户单击菜单栏中的菜单名显示出该菜单的各项时,可以将鼠标指到父菜单中的子菜单标题上,这时子菜单上的菜单项就显示出来。类似于首先给菜单栏添加一个空菜单(有名字但没有菜单项)然后再添加某些菜单项,用户也须首先给父菜单添加一个空的子菜单,然后再添加菜单项。使用“自定义”对话框使用“自定义”对话框来给另一个菜单添加子菜单。向菜单添加子菜单 1. 如果“自定义”对话框尚未打开,用鼠标指到“视图”菜单中的“工具栏”上,然后单击“自定义”。 2. 如果包含要进行修改的菜单的菜单栏没有显示出来,在“工具栏”表的“工具栏”一栏内该菜单栏名字旁边的复选框内打上对钩。 3. 在“命令”表中,在“类别”一栏内单击“新菜单”。 4. 将“新菜单”一项从“命令”栏拖到菜单栏中想添加子菜单的地方。 为了指出新子菜单的位置,把它从菜单名(如果有必要,随同后面的子菜单题注)上拖过,以此来打开要添加子菜单的菜单或子菜单,再拖到它在该菜单或子菜单中所处的位置上,然后放开鼠标左键。在菜单栏中的水平的“I”形条指出了在放开鼠标左键时子菜单添加的位置。5. 在新的子菜单上单击鼠标右键,然后在“名字”栏中键入一个名字。在为该子菜单设定的作为访问键的字母前面键入一个“&”符。 当单击该子菜单的名字时,就显示出一个空的子菜单。要了解有关如何向新的子菜单中添加菜单项,请参看本节后面“添加命令和命令分组”一节的内容。使用Visual Basic用户需使用CommandBarControls集合的Add方法来向CommandBar对象添加子菜单,该对象表示另一个菜单栏。在msoControlPopup里设置Add方法的Type参数用来指定出添加的控件是一个pop-up(弹出)控件类型和指示菜单栏中某个菜单的控件相同。参数Before指定了新菜单在原有菜单栏诸菜单中的位置。通过Add方法设置CommandBarPopup对象的Caption属性,用于指定子菜单的名称和访问键。在下面这个Microsoft Excel的例子中在工作表菜单栏的Accounting菜单底下添加了一个名为“Product”的新的子菜单。Set cstmAcctProduct = CommandBars(Worksheet Menu Bar).Controls(Accounting) _.Controls.Add(Type:=msoControlPopup)cstmAccProduct.Caption = &Product注释 用户在新子菜单的名称里作为该菜单访问键的字母前面加一个“&”符。一旦添加好了子菜单,当用户通过Controls(索引)引用该子菜单时,可以在子菜单名中使用“&”符,也可以不用。添加命令和命令分组用户可以给任何内置或自定义的菜单或子菜单添加命令,也可以修改其外观并且进行直观上的逻辑分组。本节讨论如何向菜单和子菜单添加命令。下面的一节讨论如何添加快捷菜单以及向快捷菜单添加菜单项这一特殊问题。注释 虽然可以向菜单和子菜单添加文本框、列表框以及组合框,但这通常不是显示或返回信息的最好办法。如果要添加自定义文本框、列表框和组合框,须使用和把它们添加到工具栏中相同的技术(参考本章后面的“工具栏的设计时刻修改”一节的内容)。使用“自定义”对话框“自定义”对话框提供了向菜单和子菜单添加菜单项的一种简便的方法。向菜单或子菜单添加内置命令 1. 如果“自定义”对话框尚未打开,用鼠标指到“视图”菜单中的“工具栏”上,然后单击“自定义”。 2. 如果包含要进行修改的菜单的菜单栏没有显示出来,在“工具栏”表的“工具栏”一栏内该菜单栏名字旁边的复选框打上对钩。 3. 在“命令”表中,在“类别”一栏中选择命令的类别。 该类别的所有命令都列在“命令”一栏中。4. 将命令从“命令”栏中拖到菜单或子菜单中添加该命令的位置。 为了指出命令的位置,把该命令从菜单名(如果有必要,随同后面的子菜单标题)上拖过,以此来打开要添加命令的菜单或子菜单,再拖到它在该菜单或子菜单中应处的位置上,然后放开鼠标左键。在菜单栏中的水平的“I”形条指出了在放开鼠标左键时命令添加的位置。技巧 用户也可以打开包含了要被复制的内置命令的菜单栏,然后按下“CTRL”,同时将该命令从中拖到另一个菜单栏里,完成复制。用户也可以从“自定义”对话框也提供了向内置或自定义菜单栏添加自定义命令的一种快捷方法。但是,每种Microsoft Office应用程序都包含了不同的技术来使用“自定义”对话框完成该功能。下面的段落介绍了这些区别。Microsoft Access 要添加运行宏的命令项,应该按照和向菜单添加内置命令相同的步骤来完成。在“类别”栏中,单击“所有宏”。将所需的宏从“命令”表拖到希望它在菜单中所处的位置上。要向菜单添加Function过程,应该按照和向菜单添加内置命令相同的步骤来完成。在“类别”栏中,单击任何一种类别,然后将任和一项从“命令”表拖到它在菜单中应处的位置上。在该项上单击鼠标右键,任何单击“控制属性”,显示“控制属性”对话框。在“标题”栏内,删除当前的名字,任何键入命令的新名字,在“所在操作”栏内,键入运行Visual Basic Function过程的表达式。该表达式必须采用以下语法:functionname()。Microsoft Excel 按照和向菜单添加内置命令的过程相同的步骤来完成;在“类别”栏内,单击“宏”,然后将“自定义菜单项”从“命令”栏拖到它在菜单中应处的位置。在新菜单项上单击鼠标右键,任何单击“指定宏”。在“指定宏”对话框的“宏名”一栏中,键入要运行的宏的名字。Microsoft Word 按照和向菜单添加内置命令的过程相同的步骤来完成;在“类别”栏内,单击“宏”,然后将宏从“命令”栏拖到希望它在菜单中所处的位置。技巧 在Word里,如果写了一个与内置Word命令同名的过程(或者,如果写了一个在与某个内置Word命令同名的模块内名为“MAIN”的过程),只要包含该过程的模块有效,那么该过程将替换内置命令的功能。在所有出现该命令的菜单里的该命令的副本均执行替换过程。要对控制自定义内容作更进一步的了解,请参考本章前面的“用户界面的更改范围”一节的内容。要对修改Word命令作更多的了解,请参考第七章,“Microsoft Word 对象”。Microsoft PowerPoint 按照和向菜单中添加内置命令相同的步骤来完成;在“类别”栏内,单击“宏”,然后将宏从“命令”栏拖到希望它在菜单中所处的位置。修改命令的外观在菜单中的任何命令都可以在该命令的名字旁边显示出一个图标按钮。命令的“样式”决定了是否在命令旁边显示出一个图标按钮。“自定义”对话框打开后,使用快捷菜单上的命令来设定命令的式样。下表描述了式样对菜单命令的影响。式样菜单的外观默认式样图标按钮和名字纯文本(在菜单中)只有名字纯文本(一般)只有名字图标和文本图标按钮和名字注释 在默认情况下,有些内置菜单命令没有和它们相关联的图标按钮,无论设置何种式样都不会显示图标。但是,可以给任何内置菜单命令添加图标。当“自定义”对话框打开后,可以添加或修改菜单命令旁边的图标按钮。下表列出了可以使用的技术。目 的做 法使用预定义的图标按钮用鼠标右键单击该命令,指到“更改按钮图标”,然后单击要选择的图标。复制和粘贴另一个命令的图标用鼠标右键单击被复制的图标所属的命令,然后选择“复制按钮图标”。在自定义图标的命令上单击鼠标右键,然后选择“粘贴按钮图标”。从图形程序复制和粘贴在图形程序中,打开要复制的图标。选择和复制该图标(最好是16x16象素的图形)。切换回原应用程序,单击“粘贴按钮图标”。编辑命令的当前按钮图标在命令上单击鼠标右键,然后选择“编辑按钮图标”。在“按钮编辑器”中,可以改变图标的颜色和形状,调整图标在控件上的位置,并且可以对修改进行预览。当完成对图标的编辑后,单击“确定”。用命令的原始按钮图标对命令进行复位在命令上单击鼠标右键,然后选择“复位按钮图标”。技巧 在Microsoft Access 中,可以使用“属性”对话框设置菜单命令的许多其他属性。要作更多了解,请参考“Building Applications with Microsoft Access 97”的第一章。命令分组用户可以在菜单中用线条将相关的命令分隔成组。线条本身并不是菜单项;而且可以在菜单中的任何一项前面设置出现分隔线。用户可以在“自定义”对话框中将一条命令设为一组命令中的第一项。在菜单中开始一个命令组 1. 如果“自定义”对话框尚未打开,将鼠标指到“视图”菜单的“工具栏”上,然后单击“自定义”。 2. 如果包含要进行修改的菜单的菜单栏尚未显示出来,在“工具栏”表的“工具栏”一栏内该菜单栏名字旁边的复选框打上对钩。 3. 在希望上方出现分隔线的菜单项上单击鼠标右键,然后选择“开始一组”。 在该项上再次单击鼠标右键,在快捷菜单上的“开始一组”旁边出现一个对钩。要去掉菜单项之前的分隔线,可以在该项上单击鼠标右键然后再次选择“开始一组”(不再出现对钩)。使用Visual Basic用户需使用CommandBarControls集合的Add方法来给CommandBar对象添加新的菜单项,该对象表示某个菜单或子菜单。要添加内置命令,可以使用Add方法的参数Id指定该命令的ID编号。在下面这个例子在“Custom Menu Bar”菜单栏的 “Quick Tools”菜单里添加了“Spelling”命令。Set mySpell = CommandBars(Custom Menu Bar).Controls(Quick Tools) _.Controls.Add(Id:=2)要对如何确定Microsoft Office 应用程序的内置命令的ID编号做进一步了解,请参考本章后面的“菜单项和菜单栏控件ID编号”一节的内容。要添加一条菜单命令,可以先添加一条新的菜单项,然后设置OnAction 属性来指定点击该项时运行的Visual Basic程序。设置Add 法的参数Type为msoControlButton指出该菜单项是一条命令。在下面这个Microsoft Excel例子里在工作表工具栏的“文件”菜单中添加了一个Open Database菜单项。当用户点击该菜单项时,Microsoft Excel 运行Visual Basic程序OpenDatabaseProc。Open Database直接出现在File菜单中Close命令的上面。Set databaseItem = CommandBars(Worksheet Menu Bar).Controls(File) _.Controls.Add(Type:=msoControlButton, Before:=3)With databaseItem.Caption:=Open Database.OnAction:=OpenDatabaseProcEnd With用户可以在Visual Basic 中设置表示菜单命令的对象它的许多属性,以此修改命令的外观。要做更进一步了解,请参考“帮助”中的Style属性和FaceID 属性,以及CommandBarButtion对象的其他属性和方法的帮助主题。设置开始一组菜单项的菜单项(也就是说,前面有一线条的命令项),需要设置表示菜单项的CommandBarButton、CommandBarPopup或者CommandBarComboBox对象的BeginGroup属性为True(真)。要去除该线条,则设置属性BeginGroup为False(假)。使用Controls(Index) 来返回一个表示该项的对象,此处的Index是指菜单项的标题或索引号。下面的例子在“文件”菜单的Open Database 命令(在上面的例子里添加的)前面添加了一条分隔线。Set databaseItem = CommandBars(Worksheet Menu Bar).Controls(File) _.Controls(Open Database)databaseItem.BeginGroup = True添加和修改快捷菜单用户可以Microsoft Access中使用“自定义”对话框,或者在Microsoft Excel 中使用Visual Basic 来添加和修改自定义快捷菜单。在Microsoft Access、Word和PowerPoint中,用户还可以使用“自定义”对话框来修改内置快捷菜单(在Microsoft Access还可以是自定义快捷菜单)。在Microsoft Access中,用户可以给报表、窗体以及窗体上的控件指定快捷菜单;在对象上单击鼠标右键,随时就可以显示出相应的快捷菜单。要了解在Microsoft Access报表和窗体中使用快捷菜单的内容,请参考“Building Applications with Microsoft Access 97”的第一章。Microsoft Excel提供事件BeforeRightClick可以通过修改内置快捷菜单或显示自定义快捷菜单来响应它。注释 在应用程序窗口内单击鼠标右键时,Word和PowerPoint不会显示自定义快捷菜单。使用“自定义”对话框在Microsoft Access 中,“自定义”对话框提供了添加自定义快捷菜单的一种便利方法。在Microsoft Access中添加快捷菜单 1. 如果“自定义”对话框尚未打开,将鼠标指到“视图”菜单中的“工具栏”上,然后单击“自定义”。 2. 在“工具栏”表中,单击“新建”按钮。 3. 在“工具栏名称”一栏中,键入新快捷菜单的名字,然后单击“确定”。 屏幕上显示出有着该名字的浮动的空工具栏。4. 单击“属性”,显示“工具栏属性”对话框。 5. 在“类型”一栏中,选择“快捷菜单”。 这时,原来浮动的空工具栏消失了

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论