滚动条(ScrollBar)
滚动条常常用来附在某个窗口上帮助观察数据或确定位置,也可以用来作为数据输入的工具。在日常操作中,我们常常遇到这样的情况:在某些程序中,如 Photoshop ,一些具体的数值我们并不清楚,如调板上的自定义彩,这时,可以通过滚动条,用尝试的办法到自己需要的具体数值。 在 Visual Basic 中,滚动条分为横向(HscrollBar)与竖向(VscrollBar)两种,命名规则为:HsbX 或 VsbX ,如 HsbShow、VsbShow ,等等。它们在工具箱上的图标如图所示:
图一
选中滚动条按钮,把鼠标指针放到界面设计区,然后拖动,画出符合自己要求的滚动条,或者直接双击该按钮,自动在界面设计区生成默认大小的滚动条,如图二所示:
图二
一、滚动条控件的属性:
1、Max(最大值)与 Min(最小值)属性:
滚动块处于最右边(横向滚动条)或最下边(竖向滚动条)时返回的值就是最大值;滚动块处于最左边或最上边,返回的值最小,如图三所示:
图三
Max 与 Min 属性是创建滚动条控件必须指定的属性,默认状态下, Max 值为 32767 ,Min 值为 0 。本属性既可以在界面设计过程中予以指定,也可以在程序运行中予以改变,如:
HsbShow.Min = 3
HsbShow.Max = 30
2、Value(数值)属性:
Value 属性返回或设置滚动滑块在当前滚动条中的位置,如图三所示。
改变滚动条value属性的方法有五种:
直接在属性窗口中设定value值;
鼠标单击两端箭头键改变滚动条数值;
可将滚动框沿滚动条拖动到任意位置;
用鼠标单击滚动条中滚动块两侧的部分,使滚动块以翻页的速度移动。
可以在程序运行中改变,如: HsbShow.Value = 24
3、SmallChange(小改变)属性:
当用户单击滚动条左右边上的箭头时,滚动条控件 Value 值的改变量就是 SmallChange,如图四:
图四
4、LargeChange(大改变)属性:
单击滚动条中滚动框前面或后面的部位时,引发 Value 值按 LargeChange 设定的数值进行改变,如图五:
图五
二、滚动条控件的事件:
与滚动条控件相关的事件主要是 Scroll 与 Change ,当在滚动条内拖动滚动框时会触发 Scroll 事件(但要注意,单击滚动箭头或滚动条时不发生 Scroll 事件),滚动框发生位置改变后则会触发 Change 事件。Scroll 事件用来跟踪滚动条中的动态变化,Change 事件则用来得到滚动条最后的值。
三、示例:
例1:有如图六这样一个应用程序,当滚动条(HsbShow)的滚动块发生位移时,下面的显示标签(LblShow)自动显示滚动条当前的值;在拖动滚动框的过程中,显示标签(LblShow)则会显示“拖动中……”字样。
图六
1、创建界面。
其中,HsbShow 的 Min 为 0 ,Max 为 100 ,SmallChange 为 5 ,LargeChange 为 10 。
2、双击滚动条(HsbShow),进入代码编写窗口:
Private Sub HsbShow_Change()
LblShow.Caption = "滚动条当前值为:" & HsbShow.Value
End Sub
3、滚动条的拖动事件:
Private Sub HsbShow_Scroll()
LblShow.Caption = "拖动中……"
End Sub
例2:利用滚动条实现形状填充颜的调整,如图七所示。
图七
知识链接:
图像的着问题:自然界的彩,在电脑上可以用红绿蓝三种原组合而成,这正是图像处理软件中RGB模式的原理所在。在RGB模式中,每种彩最多有255种变化,即只要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()
Shape1.FillColor = RGB(H1.Value, H2.Value, H3.Value)
End Sub
滚动条的拖动事件:
Private Sub H1_Scroll()
Shape1.FillColor = RGB(H1.Value, H2.Value, H3.Value)
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.编程实现利用滚动条控制标签的字体大小。(要求对控件的属性通过语句赋初值)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论