用VB制作可自调位置的弹出式菜单
胡亮
1997-01-01
用过,,,,,,, ,,的人一定都会对其灵活的弹出式菜单有很深的印象。几乎在,,,,,,, ,,桌面的任一地方点一下鼠标右键,都会调出一个弹出式菜单,而且即使点在最边缘的地方,它都能自动调整其位置以完整地显示出本身的菜单窗口。
由于,,能够很轻松地调用,,,,,,,函数,因此笔者试着用,,完成了这类菜单的制作。其制作原理主要是应用两个,,,,,,,函数:,,,,,,,()和,,,;,,,,,,,,,,()。前者的用途是从一个窗口中取得其菜单,其调用
格式
pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载
为:
,,,,,,,,,,,,,(,,,,(,,,,)
其中,,,,,为一数字,以标识调用后所取得的菜单,,,,,(,,,,为菜单所在窗口的标识数字。
后者的用途是将该菜单在用户指定的范围动态地显示,其调用格式为:
,,,,,;,,,,,,,,,,(,,,,,,,,,,,,,,,,,,,,,(,,,,,,,;,)
其中,,,,,为要弹出的菜单标识数,,,,,的值用于确定是用鼠标右键还是左键来启动弹出菜单,当为,时是左键,为,时是右键。,为屏幕上弹出菜单所在位置的横轴值,,为相应的纵轴值,,,,,(,,,,为菜单所在窗口的标识数,,,;,为菜单的坐标值,它是一个结构型变量,包含了四个子变量(,,,,,,,,,,,,,,,,,,,,,,前两个定义菜单左上角的坐标值,后两个定义菜单右下角的坐标值)。
下面举的例子即为制作的示范。其执行效果为在一窗口中用鼠标右键点击其中的一个图标后,会立即弹出一个活动菜单,无论你将主窗口移至何方,弹出的菜单都能自调位置。
具体的步骤如下:
#2 一、首先建立一个名为,,;,,,,,(,,,模块文件,在该模块中写入如下代码:
,,,,,, ,,,,,;,,
,,,,,, ,,,,, ,,,,,,,
,,,, ,,;,
,,,, ,, ,,,,,,,
,,, ,, ,,,,,,,
,,,,, ,, ,,,,,,,
,,,,,, ,, ,,,,,,,
,,, ,,,,
,,;,,,, ,,,;,,,, ,,,;,,,,,,,,,, ,,, :,,,,,,:(,,,,, ,,,,, ,, ,,,,,,,,,, ,,,,,, ,, ,,,,,,,,,, , ,, ,,,,,,,,,, , ,, ,,,,,,,,,, ,,,,,,,,, ,, ,,,,,,,,,, ,,,, ,, ,,,,,,,,,,,,,,, ,, ,,,),, ,,,,
,,;,,,, ,,,;,,,, ,,,,,,, ,,, :,,,,,,:(,,,,, ,,,, ,, ,,,,),, ,,,,
#2 二、建一个名为,,,,,,,,,,,,,的窗体(,,,,),在该窗体中写入如下代码:
,,,,,,, ,,, ,,,,,,,,,,,,,,(,,,,,, ,, ,,,,,,,,,,,,, ,, ,,,,,,,,, ,, ,,,,,,,, ,, ,,,,,,)
,,, ,, ,, ,,,,,,,,,, ,, ,,,,,,,
,,, ,,,,, ,, ,,,,,, ,, ,,,,,,,
,,, ,,,,,;, ,, ,,;,
,, ,,,,,, ,,, , ,,,,
,;,,,,,,,,,,,,,
,,,,,;,(,,,,,,
,,,,,;,(,,,,,
,,,,,;,(,,,,,,,;,,,,(,,,,,,,;,,,,(,,,,,,,,,,,,,,
,,,,,;,(,,,,,,,,;,,,,(,,,,,,,,;,,,,(,,,,,,,,,,,,,,
,,,(,,,,,,),,;,,,,(,,,,,,,,,,,,,,
,,,(,,,,,,,,,,,,),,;,,,,(,,,,,,,,,,,,,,
,,,,,,,,,,,,,(,,,,,,,,(,,,,)
,,,,,;,,,,,,,,,,(,,,,,,,,,,,,,,,,,,,,,,,,(,,,,,,,,,,;,)
,,, ,,
,,, ,,,
#2 三、建立一个名为,,,,,,,,的窗体,并在其上建立一个菜单,为简单起见,可在菜单中不加任何代码。
需注意的是只能建一个菜单,而该菜单包括的菜单项的数目可不限。
现在,一个自调位置的弹出式菜单就做成了,你不妨试试。