查看: 1298|回复: 5
|
VB 的Vscrollbar要怎样用呢?!!<很急!要教了>求求高手帮帮忙
[复制链接]
|
|
以下的是我的图,怎样才可以让scroll可以scroll呢?
我不知道要怎样用scrollbar,我只是放在那里而已。。。
请高手指点。。
[ 本帖最后由 Luckyghost 于 17-11-2005 05:48 PM 编辑 ] |
|
|
|
|
|
|
|
楼主 |
发表于 17-11-2005 03:20 PM
|
显示全部楼层
have some 1 help me ...i m really need the code..... |
|
|
|
|
|
|
|
楼主 |
发表于 17-11-2005 05:50 PM
|
显示全部楼层
以下这段是我找到的,但是试过改了都不能。。。不知道要怎样了。。
- Private Sub InitializeMyScrollBar()
- ' Create and initialize a VScrollBar.
- Dim vScrollBar1 As New VScrollBar()
-
- ' Dock the scroll bar to the right side of the form.
- vScrollBar1.Dock = DockStyle.Right
-
- ' Add the scroll bar to the form.
- Controls.Add(vScrollBar1)
- End Sub
复制代码 |
|
|
|
|
|
|
|
发表于 17-11-2005 09:34 PM
|
显示全部楼层
你是用vb6还是vb.net。
如果你是用vb.net的话,那么就很容易了。不需要自己manual做scrollbar。
只需设定autoscroll的property去true就可以了。当你的picture box,checkbox之类的control超出form的范围之后,vb.net会自动把scrollbar加在form里。
如果我没弄错,你好像是用vb6的。但你post上来的coding却是.net,在vb6是行不通的。
自己作scrollbar并不是容易的事,你要有这个心理准备。 |
|
|
|
|
|
|
|
发表于 17-11-2005 10:48 PM
|
显示全部楼层
我教你一个比较简单,容易的方法。
首先,假设你有六个picturebox,有四个看得到,两个看不到。那么你就需要把两个picturebox移上,才可以看到第五和第六个picturebox。
那么,你就在scrollbar里的min设0,max设2。
smallchange和largechange设1,表示你按一次就移动一个picturebox。
接下来就是调整位置和隐藏你的picturebox。
你的scrollbar每按一次,它的value就会加一或减一。
value=1时,你就需要把第二个picture移去第一个的位置,第三去第二,由此类推,再把第一的picture隐藏起来。
value=2时,你就需要把第三移动去第一的位置........,再把第一和第二隐藏起来。 |
|
|
|
|
|
|
|
发表于 17-11-2005 11:06 PM
|
显示全部楼层
我post上一个example给你,如何去简化改进就要靠你自己了。
Option Explicit
Dim y1 As Integer
Dim y2 As Integer
Dim y3 As Integer
Dim y4 As Integer
Dim y5 As Integer
Dim y6 As Integer
Dim MoveValue As Integer
Private Sub Form_Load()
y1 = 300
y2 = 1500
y3 = 2700
y4 = 3900
y5 = 5100
y6 = 6300
MoveValue = y2 - y1 '= y3 - y2 = y4 - y3
Picture1.Top = y1
Picture2.Top = y2
Picture3.Top = y3
Picture4.Top = y4
Picture5.Top = y5
Picture6.Top = y6
VScroll1.Min = 0
VScroll1.Max = 2
VScroll1.Value = 0
End Sub
Private Sub Reposition()
Dim ScrollValue As Long
Dim i As Integer, j As Integer
Dim ControlName As String
ScrollValue = VScroll1.Value * MoveValue
Picture1.Top = y1 - ScrollValue
Picture2.Top = y2 - ScrollValue
Picture3.Top = y3 - ScrollValue
Picture4.Top = y4 - ScrollValue
Picture5.Top = y5 - ScrollValue
Picture6.Top = y6 - ScrollValue
'The following part is used to hide or show the unused
'picturebox
For i = 1 To 2
ControlName = "Picture" & i
Me.Controls(ControlName).Visible = i > VScroll1.Value
Next
End Sub
Private Sub VScroll1_Change()
Reposition
End Sub |
|
|
|
|
|
|
| |
本周最热论坛帖子
|