永发信息网

VB 如何实现此功能? 关于菜单的 高分请求

答案:1  悬赏:80  手机版
解决时间 2021-02-05 21:58
  • 提问者网友:锁深秋
  • 2021-02-05 18:06
左键单击Command1 弹出 一个 菜单?

最终达到如图效果(类似与此):
http://klxqlqw.chaokuai.com/bbsimg/366tian/kv2007up3.jpg

求高人最好把源码发给我 一定高分送出
最佳答案
  • 五星知识达人网友:忘川信使
  • 2021-02-05 19:40
1.使用 工具 -> 菜单编辑器 ,打开[菜单编辑器]
2.使用[菜单编辑器]创建一个菜单(下面是一个例子,列表框里的内容)
A1
...Menu1
...Menu2
...- <- 这是一个分隔符
...Options
......P1
......P2
3.把主菜单(例子上面的 A1)设为隐藏
4.在按钮的单击代码里输入:
PopupMenu [主菜单的名字]
例如:
PopupMenu MnuMain1

MSDN ===========================
“菜单编辑器”对话框

使用菜单编辑器可以为应用程序创建自定义菜单并定义其属性。

对话框选项
“标题”
使用该选项可以输入菜单名或命令名,这些名字出现在菜单条或菜单之中。
如果想在菜单中建立分隔符条,则应在Caption 框中键入一个连字符 (-)。
为了能够通过键盘访问菜单项,可在一个字母前插入 & 符号。在运行时,该字母带有下划线(& 符号是不可见的),按 ALT 键和该字母就可访问菜单或命令。如果要在菜单中显示 & 符号,则应在标题中连续输入两个 & 符号。

“名称”
允许为菜单项输入控件名。控件名是标识符,仅用于访问代码中的菜单项;它不会出现在菜单中。

“索引”
可指定一个数字值来确定控件在控件数组中的位置。该位置与控件的屏幕位置无关。

“快捷键”
允许为每个命令选定快捷键。

“帮助上下文 ID”
允许为 context ID 指定唯一数值。在 HelpFile 属性指定的帮助文件中用该数值查找适当的帮助主题。

“协调位置”
允许选择菜单的 NegotiatePosition 属性。该属性决定是否及如何在容器窗体中显示菜单。

“复选”
允许在菜单项的左边设置复选标记。通常用它来指出切换选项的开关状态。

“激活的”
由此选项可决定是否让菜单项对事件做出响应,而如果希望该项失效并模糊显示出来,则也可清除事件。

“可视的”
将菜单项显示在菜单上。

“显示窗口列表”
在 MDI 应用程序中,确定菜单控件是否包含一个打开的 MDI 子窗体列表。

“右箭头”
每次单击都把选定的菜单向右移一个等级。一共可以创建四个子菜单等级。

“左箭头”
每次单击都把选定的菜单向上移一个等级。一共可以创建四个子菜单等级。

“上箭头”
每次单击都把选定的菜单项在同级菜单内向上移动一个位置。

“下箭头”
每次单击都把选定的菜单项在同级菜单内向下移动一个位置。

“菜单列表”
该列表框显示菜单项的分级列表。将子菜单项缩进以指出它们的分级位置或等级。

“下一个”
将选定移动到下一行。

“插入”
在列表框的当前选定行上方插入一行。

“删除”
删除当前选定行。

“确定”
关闭菜单编辑器,并对选定的最后一个窗体进行修改。菜单可以在设计时使用,但在设计时可以通过选定一个菜单,来打开菜单单击事件的“代码”窗口,而不是执行事件代码。

“取消”
关闭菜单编辑器,取消所有修改。

======================================
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 语句后面的代码先执行)或者取消该菜单时才能执行。此外,每次只能显示一个弹出式菜单,因此,如果已经显示了一个弹出式菜单或打开了一个下拉式菜单时,该方法的其它调用将被忽略
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯