会员登录 - 用户注册 - 网站地图 Office中国(office-cn.net),专业Office论坛
当前位置:主页 > 技巧 > Access技巧 > 宏/菜单/数据页 > 正文

Access编程-操作(宏)[1]

时间:2009-03-18 09:18 来源:网络 作者:UMVsoft资… 阅读:

AddMenu 操作

   

使用 AddMenu 操作可以创建下列内容:

    1、窗体报表的自定义菜单栏。自定义菜单栏可替换窗体或报表的内置菜单栏。

      2、窗体、窗体控件或报表的自定义快捷菜单。自定义快捷菜单可替换窗体、窗体控件或报表的内置快捷菜单。

          3、全局菜单栏。除了用户为窗体或报表添加的自定义菜单栏以外,全局菜单栏将替换所有 Microsoft access 窗口的内置菜单栏。

          4、全局快捷菜单。除非已经为窗体、窗体控件或报表添加了自定义快捷菜单,否则对于表数据表和查询数据表中的字段,窗体视图数据表视图打印预览中的窗体,以及打印预览中的报表,全局快捷菜单将替换它们的内置快捷菜单。

注意   虽然在 access 中,使用包含 AddMenu 操作的宏可以创建所有类型的自定义菜单(并且,原有的使用宏创建的自定义菜单仍然有效),不过也可以使用自定义对话框来创建菜单。在视图菜单上指向工具栏,然后单击自定义即可打开自定义对话框。当显示自定义对话框后,即可轻松地新建菜单或自定义内置菜单。

AddMenu 操作具有下列参数:

操作参数

说明

菜单名称

添加到自定义菜单栏或全局菜单栏中的下拉式菜单的名称。可以在窗口操作参数部分的菜单名称框中输入菜单名称。这是自定义菜单栏和全局菜单栏所必需的参数,但对于自定义快捷菜单和全局快捷菜单,则忽略该参数。

若要创建访问键以便使用键盘来选择菜单,请在作为访问键的字母之前键入一个“And”符号 (&)。在菜单栏上的菜单名称中该字母将带有下划线。

菜单宏名称

宏组的名称,该宏组中包含上述菜单命令所对应的宏。这是必需的参数。

如果在某个类库数据库中执行包含 AddMenu 操作的宏,access 将只在当前数据库中查找具有该名称的宏组。

状态栏文字

选择菜单时显示在状态栏中的文本。对于自定义快捷菜单和全局快捷菜单,该参数会被忽略。

使用宏创建自定义菜单栏、自定义快捷菜单、全局菜单栏或全局快捷菜单时,必须执行下列操作:

    1、为自定义菜单栏或全局菜单栏上所需的每个下拉式菜单均创建一个包含 AddMenu 操作的菜单栏宏。对于自定义快捷菜单和全局快捷菜单,菜单栏宏应该只包含一个 AddMenu 操作。

   

    2、通过为每个菜单创建一个宏组为每个下拉式菜单指定命令。每个命令都运行由该宏组中的一个宏所定义的操作集合。对于自定义快捷菜单和全局快捷菜单,只需创建一个宏组,该宏组中的每个宏都包含一个快捷菜单命令的操作集合。

    3、将菜单栏宏附加于适当的 access 对象:

      ①对于自定义菜单栏,在窗体或报表的 MenuBar 属性中输入菜单栏宏的名称。

      ②对于自定义快捷菜单,在窗体、窗体控件或报表的 ShortcutMenuBar 属性中输入菜单栏宏的名称。

      ③对于全局菜单栏,单击工具菜单上的启动,然后在启动对话框的菜单栏框中输入菜单栏宏的名称。

      ④对于全局快捷菜单,单击工具菜单上的启动命令,然后在启动对话框的快捷菜单栏框中输入菜单栏宏的名称。

菜单栏上的每个菜单都需要一个独立的 AddMenu 操作。

自定义菜单栏、全局菜单栏及快捷菜单会替换其所附对象的内置菜单栏和快捷菜单。如果要在这些菜单里保留某些 access 命令以备使用,可以利用 RunCommand 操作将这些命令放入所需菜单的宏组中。

可以从菜单命令运行宏,方法是在该命令的宏中使用 RunMacro 操作。

注意   AddMenu 操作只能用于菜单栏宏,而该菜单栏宏必须是由窗体、窗体控件或报表的 MenuBar ShortcutMenuBar 属性指定的,或是由启动对话框(通过单击工具菜单上的启动命令即可打开该对话框)的菜单栏框或快捷菜单栏框指定的。菜单栏宏应该只包含 AddMenu 操作。

为窗体或报表,或者为数据库指定了菜单栏宏之后,无论何时打开该窗体、报表或数据库,access 都会执行该菜单栏宏。如果在窗体、报表或数据库打开时,更改了用于定义下拉式菜单命令的菜单栏宏或宏组,那么必须在关闭窗体、报表或数据库后将其重新打开,才能看到自定义菜单栏及其菜单中的更改。

创建包含自定义菜单命令的宏组时,可以参阅下列信息:

    1、在宏组中,每个宏的宏名列中的名称就是命令名称。当选择命令时,该行备注列中的文本将显示在状态栏中。

    2、若要在两个菜单命令之间创建分隔线,请在宏名列中适当的菜单命令之间键入连字符 (-)

    3、若要创建访问键以便用键盘选择命令,请在命令名称中作为访问键的字母前键入“And”符号 (&)。该字母在菜单上将以下划线形式显示。

可以在由菜单宏名称参数指定的宏组中使用 AddMenu 操作为自定义菜单或自定义快捷菜单创建子菜单。如果将 AddMenu 操作放入这样的宏组中,access 将使用由该 AddMenu 操作的菜单名称状态栏文字参数所指定的菜单名称和状态栏文字创建一个子菜单。该子菜单中包含由 AddMenu 操作的菜单宏名称参数所指定的宏组中的宏定义的命令。因为这种 AddMenu 操作(该操作通常为自定义菜单上的命令指定命令名称和状态栏文本)定义的是子菜单,而不是最上层菜单的命令,所以该操作的宏名备注列将被忽略。通过在每一级菜单的宏组中使用 AddMenu 操作,可以创建多级子菜单。

只有最上层菜单栏宏才支持宏条件。也就是说,可以在菜单栏宏中使用条件来决定是否在自定义菜单栏或全局菜单栏中显示特定的菜单,但是只有对最上层菜单栏上的菜单才可这样做。无法用条件来显示或隐藏菜单中的命令或子菜单。对于自定义快捷菜单或全局快捷菜单,同样可以使用条件来隐藏或显示它们。

若要在 Visual Basic 中运行 AddMenu 操作,可以使用 DoCmd 对象的 AddMenu 方法。在 Visual Basic 中,您还可以设置 MenuBar ShortcutMenuBar 属性,将自定义菜单栏或自定义快捷菜单附加到窗体、窗体控件或报表中。可以设置 StartUpMenuBar 属性(相当于通过编程设置菜单栏框)来创建全局菜单栏,也可以设置 Application 对象的 MenuBar 属性来创建全局菜单栏。类似地,可以设置 Application 对象的 StartUpShortcutMenuBar 属性(相当于通过编程设置快捷菜单栏框)或 ShortcutMenuBar 属性来创建全局快捷菜单。

(责任编辑:admin)

顶一下
(0)
0%
踩一下
(0)
0%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价: