[原创]怎么制作弹出式菜单?
请介绍它所用的函数和具体的语法,有知道的请说,谢谢
用VB的菜单设计器就可以设计菜单了,设计好了将顶层菜单的Visible设为False,即隐藏起来。
在需要弹出菜单的时候用 PopupMenu 菜单名 来弹出菜单。
用以在 MDIForm 或 Form 对象上的当前鼠标位置或指定的坐标位置显示弹出式菜单。不支持命名参数。
语法
object.PopupMenu menuname, flags, x, y, boldcommand
PopupMenu 方法的语法包含下列部分:
部分 | 描述 |
object | 可选的。一个对象表达式,其值为“应用于”列表中的一个对象。如果省略 object,则带有焦点的 Form 对象缺省为 object。 |
Menuname | 必需的。要显示的弹出式菜单名。指定的菜单必须含有至少一个子菜单。 |
Flags | 可选的。一个数值或常数,按照下列设置中的描述,用以指定弹出式菜单的位置和行为。 |
X | 可选的。指定显示弹出式菜单的 x 坐标。如果该参数省略,则使用鼠标的坐标。 |
Y | 可选的。指定显示弹出式菜单的 y 坐标。如果该参数省略,则使用鼠标的坐标。 |
boldcommand | 可选的。指定弹出式菜单中的菜单控件的名字,用以显示其黑体正文标题。如果该参数省略,则弹出式菜单中没有以黑体字出现的控件。 |
设置值
用于 flag 的设置值有:
常数位置 | 值 | 描述 |
vbPopupMenuLeftAlign | 0 | (缺省值)。弹出式菜单的左边定位于 x。 |
vbPopupMenuCenterAlign | 4 | 弹出式菜单的于 x 居中位。 |
vbPopupMenuRightAlign | 8 | 弹出式菜单的右边定位于 x。 |
常数行为 | 值 | 描述 |
vbPopupMenuLeftButton | 0 | (缺省值)。 仅当使用鼠标左按钮时, 弹出式菜单中的项目才响应鼠标单击。 |
vbPopupMenuRightButton | 2 | 不论使用鼠标右按钮还是左按钮, 弹出式菜单中的项目都响应鼠标单击。 |
说明
上述常数在对象浏览器中的 Visual Basic (VB) 对象库里列出。
可使用 ScaleMode 属性指定x和y坐标的度量单位。x 和 y 坐标定义弹出式菜单相对于指定窗体显示的位置。如果没有包括 x 和 y 坐标,则弹出式菜单就显示在鼠标指针当前的位置。
在显示弹出式菜单时,调用 PopupMenu 方法后面的代码直到用户或者从菜单中选择了命令(这时,该命令的 Click 事件的代码比 PopupMenu 语句后面的代码先执行)或者取消该菜单时才能执行。此外,每次只能显示一个弹出式菜单,因此,如果已经显示了一个弹出式菜单或打开了一个下拉式菜单时,该方法的其它调用将被忽略。