求教如何用代码写一个弹出式菜单,谢谢!!!

解决方案 »

  1.   

    CreatePopupMenu VB声明 
    Declare Function CreatePopupMenu Lib "user32" Alias "CreatePopupMenu" () As Long 
    说明 
    创建一个空的弹出式菜单。可用AppendMenu或InsertMenu函数在窗口中添加条目,或者为一个现成的菜单添加弹出式菜单,并在新建的菜单中添加条目 
    返回值 
    Long,如成功,返回一个菜单句柄;零意味着错误 
    注解 
    并不推荐用这个函数来创建备用的vb菜单,除非是为TrackPopupMenu函数生成菜单。这个窗口中使用的命令ID必须与现有vb菜单控件的ID相符。或者用一个子类处理控件进行管理
     
      

  2.   

    PopupMenu 方法
          用以在 MDIForm 或 Form 对象上的当前鼠标位置或指定的坐标位置显示弹出式菜单。不支持命名参数。语法object.PopupMenu menuname, flags, x, y, boldcommandPopupMenu 方法的语法包含下列部分:部分 描述 
    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 语句后面的代码先执行)或者取消该菜单时才能执行。此外,每次只能显示一个弹出式菜单,因此,如果已经显示了一个弹出式菜单或打开了一个下拉式菜单时,该方法的其它调用将被忽略。
      

  3.   

    PopupMenu 方法示例 
    本示例显示当用户在窗体上单击鼠标右键时在光标处出现的一个弹出式菜单。要检验此示例,创建一个窗体,它包含一个称为 mnuFile(mnuFile 必需至少有一个 submenu)的 Menu 控件。将本例代码粘贴到一个窗体的声明部分,然后按 F5 键。Private Sub Form_MouseDown (Button As Integer, Shift As Integer, X As Single, Y As Single)
       If Button = 2 Then
          PopupMenu mnuFile
       End If
    End Sub
      

  4.   

    我有一个小例子,可以给你看看,不过是用菜单编辑器作的弹出菜单,要的话给我发邮件[email protected]
      

  5.   

    谢谢各位!!!!我想作的是如foxmail里写新邮件里的更改的"更改账户"命定的下拉菜单那样的,求教各位高手,谢谢!!!!!!!!
      

  6.   

    用菜单编辑器作,然后属性设为隐藏再用PopupMenu方法弹出它