添加和显示快捷菜单
优质
小牛编辑
124浏览
2023-12-01
快捷菜单是一个浮动命令栏,它在用户单击鼠标右键时显示。快捷菜单可包含与命令栏同样的控件类型,控件在其中的行为与在命令栏中一样。然而,在大多数应用程序中,不能由应用程序接口创建或修改快捷菜单,因此,必须在运行时间创建和修改快捷菜单。
在运行时间添加快捷菜单
快捷菜单和其他工具栏的唯一区别是:用Add 方法创建快捷菜单时,必须将msoBarPopUp 指定为 position 参数的值。以下示例新建一个快捷菜单,在其中添加两个控件(带标题),然后用ShowPopup 方法显示该新菜单。
Set copyAndPasteMenu = CommandBars.Add( _
Name:="Custom", Position:=msoBarPopup, _
Temporary:=True)
Set copy = copyAndPasteMenu.Controls.Add
With copy
.FaceId = CommandBars("Standard").Controls("Copy").Id
.Caption = "Copy the selection"
End With
Set paste = copyAndPasteMenu.Controls.Add
With paste
.FaceId = CommandBars("Standard").Controls("Paste").Id
.Caption = "Paste from the Clipboard"
End With
copyAndPasteMenu.ShowPopup 200, 200
显示快捷菜单
如前面示例所述,可用ShowPopup 方法显示快捷菜单。
如果容器应用程序可为用户的操作指定相应的事件过程,那么就可用显示一个快捷菜单的过程响应一个单击鼠标右键的事件。然而,并非所有的应用程序都支持事件过程。请查看容器应用程序的文档以确定该应用程序是否支持事件过程。
对快捷菜单作运行时间修改
对快捷菜单的任意修改都必须在运行时间进行,并且所作的修改通常仅限于改变菜单中控件的外观或功能。有关添加和管理菜单项的详细信息,请参阅添加和管理菜单栏和菜单项。