回 帖 发 新 帖 刷新版面

主题:请教:工具栏内带下拉菜单的按钮代码怎么写?

请各位大侠帮帮忙,工具栏内带下拉菜单的按钮代码怎么写呢?[em37]

回复列表 (共4个回复)

沙发

ButtonMenuClick事件
Private Sub Toolbar1_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
    Debug.Print ButtonMenu.Text, "menuclick"
End Sub

板凳

能不能再说的细一点呀?我的是第12个按钮,下面还有多个菜单.单个的按钮和菜单栏我已经会弄了,就是这样的按钮搞了两天也没搞出来,在帮助里也看了不少的资料,也没能找到相应的资料.请大仙再给指导一下吧.谢谢

3 楼

哈哈!!!
哈哈!!!哈哈!!!
哈哈!!!哈哈!!!哈哈!!!
哈哈!!!哈哈!!!哈哈!!!哈哈!!!
各位大仙:
这个问题我已经自己解决了。
    1、要解决的问题是:“工具栏中一共有15个按钮,中间还一些分隔符。在15个按钮中有三个带下拉菜单的按钮,每个下拉菜单中最少有三个子菜单。如何能让子菜单也分别调用各自的窗体文件呢”?
    2、代码如下:
    Private Sub tbrStandard_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
    Select Case ButtonMenu.Index
        Case 21, 1
        Quan.Show
        Case 21, 2
        AM.Show
    End Select
End Sub
    3、代码解释:名为tbrStandard的Toolbar控件
                21代表在“属性”-“索引”中的第21个按钮
                1和2分别代表的是“索引”为21按钮下的第1个和第2个子菜单
                Quan.Show'是单击第1个子菜单后所打开的窗体
                AM.Show          '是单击第1个子菜单后所打开的窗体


哈哈!!!哈哈!!!哈哈!!!哈哈!!!
哈哈!!!哈哈!!!哈哈!!!
哈哈!!!哈哈!!!
哈哈!!!                                  我好伟大呀!!!!!!!!!!!!!!

4 楼

经过昨晚的调试,上面的代码有一定的问题。即:第二个按钮下的子菜单设置好后,所调出的事件与第一个按钮下的子菜单设置的事件是一样的。因此,不能用
Select Case ButtonMenu.Index
        Case 21, 1
应该用Select Case ButtonMenu.Key
        Case "WD", "YYB"
        Yingyebu.Show
下面是我已经调试好的完整代码,可以借鉴

Private Sub tbrStandard_ButtonMenuClick(ByVal ButtonMenu As MSComctlLib.ButtonMenu)
    Select Case ButtonMenu.Key
        Case "WD", "YYB"    ' "WD"表示按钮的关键字,"YYB"表示按钮下子菜单的关键字
        Yingyebu.Show
        StatusBar1.Panels(1).Text = "当前窗体是:" & "字符串"   '状态栏第一个窗格内将要显示的内容
        Case "WD", "FR"
        Fengrong.Show
        StatusBar1.Panels(1).Text = "当前窗体是:" & "字符串"
        Case "GW", "CWGL"
        Caiwu.Show
        StatusBar1.Panels(1).Text = "当前窗体是:" & "字符串"
        Case "GW", "DGJL"
        Duigong.Show
        StatusBar1.Panels(1).Text = "当前窗体是:" & "字符串"
        Case "BM", "GJB"
        Gejinbu.Show
        StatusBar1.Panels(1).Text = "当前窗体是:" & "字符串"
         Case "BM", "TZB"
        Tuozhanbu.Show
        StatusBar1.Panels(1).Text = "当前窗体是:" & "字符串"
         Case "BM", "ZHB"
        Zonghebu.Show
        StatusBar1.Panels(1).Text = "当前窗体是:" & "字符串"
        
    End Select
End Sub

我来回复

您尚未登录,请登录后再回复。点此登录或注册