VB考试教程:菜单程序设计五弹出式菜单的设计
第五,弹出菜单的设计
功能:用于控制与表单中特定区域相关的操作或选项。不像下拉菜单,不需要在窗口顶部下拉,可以在窗口任意位置打开。
设计分两步:首先用菜单编辑器创建菜单,和前面的基本一样。不同的是,菜单名(即主菜单项)的visible属性必须设置为False(子菜单项不应设置为False);第二步是用PopupMenu方法弹出显示。
PopupMenu方法用于显示弹出菜单,语法格式为:
对象。弹出菜单菜单名称,标志,x,y,bold命令
其中包括:
对象-表单的名称。
Menuname(菜单名)-指菜单编辑器中定义的主菜单项的名称。
X,Y——弹出菜单在表单上显示位置的X,Y坐标(与Flags参数一起使用)。
Bold命令-在弹出菜单中指定弹出菜单控件的名称,该名称将显示为粗体标题。
flags-该参数是一个数字或符号常量,指定弹出菜单的位置和行为。其值分为两组,一组用于指定菜单位置,另一组用于定义特殊的菜单行为,如下表所示:
指定菜单位置。
定位常量值的作用
VbPopupMenuLeftAlign 0 X坐标指定弹出菜单的左边界位置
VbPopupMenuCenterAlign 4 X坐标指定弹出菜单的中间位置
vbpopupmenugrightalign 8 X坐标指定弹出菜单的右边界位置。
定义菜单行为
定位常数值
VbPopupMenuLeftButton 0通过单击鼠标左键选择菜单命令
vbpopupmenurright button 8通过单击鼠标右键选择菜单命令。
描述:
在PopupMenu方法的六个参数中,除了“菜单名”,其他所有参数都是可选的。当省略“Object”时,弹出菜单只能在当前表单中显示。如果需要在其他表单中显示弹出菜单,必须添加表单的名称。
标志的两组参数可以单独使用,也可以组合使用。组合使用时,每组取一个值,两个值相加;如果使用符号常量,这两个值由Or连接。
x和Y分别用于指定弹出菜单显示位置的横坐标和纵坐标。如果省略,弹出菜单将显示在鼠标光标的当前位置。
弹出式菜单的“位置”由x、y和Flags参数共同指定。如果省略这些参数,当单击鼠标右键弹出菜单时,鼠标光标将位于弹出菜单左上角的坐标处。默认情况下,表单的左上角是坐标原点。如果只省略了Flags参数,而没有省略x和y参数,那么x和y就是弹出菜单左上角的坐标;如果x,y和Flags参数同时使用,弹出菜单的位置可以分为以下几种情况:
Flags=0 X,y是弹出菜单左上角的坐标。
Flags=4 X,y是弹出菜单上边缘中间的坐标
Flags=8 X,y是弹出菜单右上角的坐标。
为了显示弹出菜单,PopupMenu方法通常放在MouseDown事件中,该事件响应所有的鼠标单击。按照惯例,点击鼠标右键显示弹出菜单,可以通过Button参数实现。对于两键鼠标,左键的按钮参数值为1,右键的按钮参数值为2。因此,您可以强制右键显示弹出菜单来响应MouseDown事件:
如果= 2,则弹出菜单菜单名称
以下是创建弹出菜单的一般过程的示例。
6.创建一个弹出菜单来更改文本框中字体的属性。
步骤如下:
打开菜单编辑器并设置菜单属性。
标题缩写符号的可见性
字体格式
粗体
斜体
下划线
20
隶书
退出pop format
pop Bold
pop Italic[Ls
退出none
1
1
1
false
true
true
true
编写窗体的MouseDown事件过程。
私有子窗体_MouseDown(按钮为整数,Shift为整数,X为单值,Y为单值)
Button = 2 then '来确定是否按下了鼠标右键,如果是,则使用PopupMenu方法来弹出菜单。
popupmenu pop format的popup menu方法省略了object参数并引用当前表单。
结束If
末端接头
鼠标事件:
除了单击和双击事件,鼠标事件还包括按下或释放鼠标键触发的事件,即MouseDown、MouseUp和MouseMove。这三个鼠标事件的参数相同,它们的含义是:
◆Button——被按下的鼠标按钮。可以取1,2,4三个值分别代表鼠标的左键,右键,中键(如果没有或者没有可以省略)。
◆X,Y——鼠标光标的当前位置,随鼠标光标在表单上的移动而变化,不给出具体值。
◆Shift-表示Shift、Ctrl和Alt的状态。它有8个值(0—7),它们的作用如下:
0—不按转换键
1—按Shift键
2—按Ctrl键3
3—同时按Shift和Ctrl键
4——。
0条评论