注册 登录
编程论坛 VB6论坛

请问这个选单功能是要用哪种控件来做?

wube 发布于 2015-03-13 12:06, 411 次点击
只有本站会员才能查看附件,请 登录
5 回复
#2
snrtjat2015-03-13 13:44
只知道有个TreeView 控件,好像也不能做出楼上的效果,如果楼上的功能能做出来,我也想学学。
#3
wube2015-03-13 15:28
看来原本VB自带的控件做不出这样的效果,
不过这功能是能做出来,只是很麻烦,要用特殊控件,
所以才上来问,也许有人能用VB自带的控件来实现.
#4
风吹过b2015-03-14 12:36
Private Sub CmdLab_Click(Index As Integer)

Dim i As Long
Dim h1 As Long, h2 As Long
h1 = CmdLab(0).Height

h2 = Picture1.ScaleHeight - (CmdLab.Count - 1) * h1


If DbPic(Index).Height = h1 Then     '单击的按钮是收缩的

For i = 0 To Index
    DbPic(i).Height = h1
    DbPic(i).Top = (i) * h1
    CmdLab(i).Top = 0
Next i

DbPic(Index).Height = h2

For i = Index + 1 To CmdLab.Count - 1
    DbPic(i).Height = h1
    DbPic(i).Top = (i - 1) * h1 + h2
    CmdLab(i).Top = 0
Next i

Else
    For i = 0 To DbPic.Count - 1
        DbPic(i).Height = h1
        DbPic(i).Top = (i) * h1
        CmdLab(i).Top = 0
    Next i
End If

End Sub
-------------------------------------
Picture1  是整个区域的容器,
然后 里面放 一个 Picture,名字为 DbPic  定义为数组
再DbPic 里放个按钮,名字为 CmdLab       也同样定义为数组,
并且 DbPic 与 CmdLab 的下标要求:每一对的下标是同样的,下标要求连续。
然后再到 DbPic 里放 Option控件,然后这个控件按你自己的需要 进行命名和分组。属于同一组的控件放到同一个 DbPic 里面,手动排列好来。

上面是收缩和展开对应 DbPic 函数的代码。
我测试的效果如下:

只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录
#5
风吹过b2015-03-14 12:38
只有本站会员才能查看附件,请 登录

工程在这, 我是复制的,所以每个的图标都是一样的。
#6
wube2015-03-17 10:38
版主做的这个感觉容易很多,我抓到的是这个,虽然相似度几乎百分之百,但是用的不是VB自带的控件.
只有本站会员才能查看附件,请 登录
1