2024年4月22日发(作者:)

滚动条(ScrollBar)

滚动条常常用来附在某个窗口上帮助观察数据或确定位置,也可以用来作为数据输

入的工具。在日常操作中,我们常常遇到这样的情况:在某些程序中,如 Photoshop ,

一些具体的数值我们并不清楚,如调色板上的自定义色彩,这时,可以通过滚动条,用

尝试的办法找到自己需要的具体数值。 在 Visual Basic 中,滚动条分为横向

(HscrollBar)与竖向(VscrollBar)两种,命名规则为:HsbX 或 VsbX ,如

HsbShow、VsbShow ,等等。它们在工具箱上的图标如图所示:

图一

选中滚动条按钮,把鼠标指针放到界面设计区,然后拖动,画出符合自己要求的滚

动条,或者直接双击该按钮,自动在界面设计区生成默认大小的滚动条,如图二所示:

图二

一、滚动条控件的属性:

1、Max(最大值)与 Min(最小值)属性:

滚动块处于最右边(横向滚动条)或最下边(竖向滚动条)时返回的值就是最大值;

滚动块处于最左边或最上边,返回的值最小,如图三所示:

图三

1

Max 与 Min 属性是创建滚动条控件必须指定的属性,默认状态下, Max 值为

32767 ,Min 值为 0 。本属性既可以在界面设计过程中予以指定,也可以在程序运行

中予以改变,如:

= 3

= 30

2、Value(数值)属性:

Value 属性返回或设置滚动滑块在当前滚动条中的位置,如图三所示。

改变滚动条value属性的方法有五种:

直接在属性窗口中设定value值;

鼠标单击两端箭头键改变滚动条数值;

可将滚动框沿滚动条拖动到任意位置;

用鼠标单击滚动条中滚动块两侧的部分,使滚动块以翻页的速度移动。

可以在程序运行中改变,如: = 24

3、SmallChange(小改变)属性:

当用户单击滚动条左右边上的箭头时,滚动条控件 Value 值的改变量就是

SmallChange,如图四:

图四

4、LargeChange(大改变)属性:

单击滚动条中滚动框前面或后面的部位时,引发 Value 值按 LargeChange 设定

的数值进行改变,如图五:

图五

二、滚动条控件的事件:

与滚动条控件相关的事件主要是 Scroll 与 Change ,当在滚动条内拖动滚动框

时会触发 Scroll 事件(但要注意,单击滚动箭头或滚动条时不发生 Scroll 事件),滚

2

动框发生位置改变后则会触发 Change 事件。Scroll 事件用来跟踪滚动条中的动态变

化,Change 事件则用来得到滚动条最后的值。

三、示例:

例1:有如图六这样一个应用程序,当滚动条(HsbShow)的滚动块发生位移时,下面

的显示标签(LblShow)自动显示滚动条当前的值;在拖动滚动框的过程中,显示标签

(LblShow)则会显示“拖动中„„”字样。

图六

1、创建界面。

其中,HsbShow 的 Min 为 0 ,Max 为 100 ,SmallChange 为 5 ,

LargeChange 为 10 。

2、双击滚动条(HsbShow),进入代码编写窗口:

Private Sub HsbShow_Change()

n = "滚动条当前值为:" &

End Sub

3、滚动条的拖动事件:

Private Sub HsbShow_Scroll()

n = "拖动中„„"

End Sub

例2:利用滚动条实现形状填充颜色的调整,如图七所示。

图七

知识链接:

图像的着色问题:自然界的色彩,在电脑上可以用红绿蓝三种原色组合而成,这正是图

像处理软件中RGB模式的原理所在。在RGB模式中,每种色彩最多有255种变化,即只

3

要R、G、B三种色彩都在各自的255范围内,这种色彩就是有效的。在VB中,也用RGB

作为色彩的描述。如白色为RGB(255,255,255),黑色为RGB(0,0,0)。

程序设计:

1、 创建界面。三个滚动条分别命名为H1,H2,H3,Min为0,Max为255,

SmallChange 为 2 ,LargeChange 为 10 。

2、 双击滚动条(H1),进入代码编写窗口:

滚动条的Change事件:

Private Sub H1_Change()

lor = RGB(, , )

End Sub

滚动条的拖动事件:

Private Sub H1_Scroll()

lor = RGB(, , )

End Sub

3、输入H2和H3的Change 和Scroll事件代码,同H1完全相同,复制即可。

练习:

1.单击滚动框两侧空白处时,滚动条 Value 属性值的改变量由( )属性值决定。

A)Min B)Max

C)SmallChange D)LargeChange

2.触发滚动条Scroll事件的操作是 ( )。

A)单击滚动条箭头 B)单击滚动条箭头与滚动块之间的空白区

C)拖曳滑块 D)以上操作均可

3.单击滚动条两端的箭头可触发滚动条的( )事件。

(A) Change (B) Scroll (C) DragOver (D) ItemCheck

4.设置( )属性可改变单击滚动条两端箭头时的Value的增量。

(A) Max (B) Min (C) LargeChange (D) SmallChange

5.能够使滚动条的滚动框移到滚动条的50位置的语句是___________。

6.编程实现利用滚动条控制标签的字体大小。(要求对控件的属性通过语句赋初值)

4