VB窗口滑动条自动出现和隐藏的问题

来源:百度知道 编辑:UC知道 时间:2024/05/26 11:28:59
在一个VB窗体中,改窗体在运行时是最大化显示的,就是WindowState属性选2的时候,这时运行的时候窗体是最大化全屏显示的,窗体里面的内容也都是填满整个窗体的,要想使这个窗口在调整大小后出现滑动条,使窗口内容还能滑动后全部显示,要怎么实现,代码设置要怎么做?
求大家帮帮忙解决下,谢谢!
麻烦解释下8、9、10行
VScroll1.Move Me.ScaleWidth - VScroll1.Width, 0, VScroll1.Width, Me.ScaleHeight - HScroll1.Height
VScroll1.Max = Picture1.Height - Me.ScaleHeight
16、17行
HScroll1.Move 0, Me.ScaleHeight - HScroll1.Height, Me.ScaleWidth - VScroll1.Width
HScroll1.Max = Picture1.Width - Me.ScaleWidth
23行
Picture1.Left = -HScroll1.Value
26行
Picture1.Top = -VScroll1.Value
都是什么意思
完全按照这个代码有很多问题啊,我是把所有的控件都放在一个图片上面的,而且我是要这个图片是窗口最大化时窗口的大小的,这样在窗口显示的时候才能让全部控件占满窗口而比较美观(我用的是一个数据显示表格,所以要全部铺满窗口),但是这个代码让滑动条显示在图片上面了,挡住了我的表格,改变窗口大小的时候滑动条的位置也不变,一直显示在窗口的固定位置,而不是在最下面和最右边,但是这个滑动条能够显示全部的窗口,还是不错的,非常感谢了,望继续改进,谢谢!

改了一下应该好点了。据体代码的意思很难用语言表达,根据控件的属性和方法你自已研究吧。
VScroll1.Visible就是VScroll1的可见性,=False就是不可见,反之则可见。
HScroll1.Value就是HScroll1的值,就是说它的滚动条在什么地方。
VScroll1.Move就是移动VScroll1的位置。
Me.ScaleWidth就是窗体显示控件的地方的宽度,就是不包括边框的宽度。
Height高度
Width宽度
Left,Top这些懂吧。

Private Sub Form_Load()
VScroll1.Visible = False
HScroll1.Visible = False
End Sub

Private Sub Form_Resize()
Dim H As Integer
Dim W As Integer
For I = 0 To 2
If (Picture1.Height > (Me.ScaleHeight - W)) Then H = VScroll1.Width
If (Picture1.Width > (Me.ScaleWidth - H)) Then W = HScroll1.Height
Next I
If (Picture1.Height > (Me.ScaleHeight - W)) Then
VScroll1.Visible = True
If (Picture1.Width > (Me.ScaleWidth - H)) Then
VScroll1.Max = Picture1.Height - Me.ScaleHeight + HScroll1.Height
VScroll1.Move Me.ScaleWidth - VScroll1.Width, 0, VScroll1.Width, Me.ScaleHeight - HScroll1.Height
Else
VScroll1.Max = Pictur