8.1.3 弹出式菜单
2025年09月26日
8.1.3 弹出式菜单
Visual Basic中除下拉式菜单外,还常常使用弹出式菜单。弹出式菜单能够以灵活的方式为用户提供更加便利的操作方式,它可以根据用户右击时的位置,动态地调整菜单的显示位置。因此,弹出式菜单也称为上下文菜单,或快捷菜单。
建立弹出式菜单基本步骤如下。
1)用菜单编辑器建立菜单。
2)根据需要用PopupMenu方法弹出菜单。
第1)步的操作与下拉式菜单基本相同,唯一的区别是,需要把弹出式菜单名(即顶级菜单)的“可见”属性设置为False,目的是不让它在菜单栏中出现,它的子菜单不用设置此属性。
PopupMenu方法的语法格式如下。
[对象.]:可选,如果省略,则默认为带有焦点的Form对象。
<菜单名>:必选,要显示的弹出式菜单名。指定的菜单至少要有一个子菜单。
flags:可选,数值或常量,按照下列设置中的描述,用于指定弹出式菜单的位置和行为。
x:可选,指定显示弹出式菜单的x坐标。如果该参数省略,则使用鼠标指针的坐标。
y:可选,指定显示弹出式菜单的y坐标。如果该参数省略,则使用鼠标指针的坐标。
BoldCommand:可选,指定弹出式菜单中菜单控件的名称,并以黑体显示其正文标题,即加粗显示。如果该参数省略,则弹出式菜单中没有以黑体字出现的控件。在弹出式菜单中只能有一个菜单项被加粗。
【例8-2】在窗体上添加一个标签,程序运行,当用户在标签上右击时,弹出“字体”菜单。
详细设置见表8-4。
表8-4 “字体”菜单
菜单编辑器设置如图8-4所示。
完整代码如下。
图8-4 菜单编辑器设置
运行结果如图8-5所示。
图8-5 弹出式菜单示例