(源程序下载)
我们先打开菜单编辑器(在工具菜单中),然后添加一个一级菜单Popmenu,将它的Visible属性设为“False”,这代表菜单在程序运行时是看不到的,由于一级菜单是二级菜单的上级菜单,所以二级菜单也是看不到的。然后我们来添加几个二级菜单,注意每个菜单都有Caption属性和Name属性,这两个属性是必须写的,Caption属性是显示在菜单项上的内容,而Name属性则是我们要在程序中引用菜单项的代号,类似与其它控件的Name属性。而菜单中分隔线是通过把Caption属性设为“-”来实现的。

菜单编辑好后,就能在程序中引用并控制它,在本例中我们希望在文本框上点击鼠标右键时弹出这个右键菜单,则需要在文本框的MouseDown事件中加入控制语句:
Private Sub RichTextBox1_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)
If Button = 2 Then '如果是鼠标右键按下时
Form1.PopupMenu mnufile, 0, X, Y '弹出右键菜单
End If
End Sub
其中MouseDown事件各个参数意义如下:
button返回一个整数,用来标识该事件的产生是按下哪个按键,其中左键为0,右键为2,中间键为4
shift 返回一个整数,标示是否同时有Shift,Ctrl,Alt键按下
x, y 返回一个指定鼠标指针当前位置的数
Popupmenu是一个方法:
PopupMenu方法用来弹出一个菜单,语法是:object.PopupMenu menuname, flags, X, Y
mnufile是我们在菜单编辑器中设计好的菜单的名称
X,Y是弹出菜单的位置,可以为数字,如果直接写为X,Y则是在当前鼠标位置弹出菜单
这样就能调出右键菜单,然后我们根据自己的需要,为每个菜单项的Click事件编写代码,完成一些特定的操作,右键菜单就可以使用了。最后效果如下图所示:
