我在这里学编程应用篇 共45页[1 2 3 4 5 6 7 >»<... 最后一页]

做一个滚动字幕

  Visual Basic虽然不是一种专门的多媒体集成环境,但作为一种标准的计算机语言来说,它的多媒体处理功能比其他语言都要强得多。突出表现之一就是它有很方便的动画制作能力。

用VB制作简单动画,大致有以下几种方法:

一、改变控件的有关属性使控件“动”起来。

我们可以利用控件的坐标属性(Left、Top)使控件移动;利用控件的大小属性(Width、Height)使控件放大或缩小;利用控件的颜色属性(ForeColor、BackColor)使控件“变脸”等。

下面举几个例子。

1.做一个滚动字幕。

在浏览器里或者在电视上,我们经常会看到屏幕上出现一行滚动的字幕:文字信息慢慢地从右至左移动。这种效果是怎样做出来的呢?其实,在VB中要实现这样的效果并不困难。基本原理如下:

在一个窗体的下方放一个标签Label1,将其Caption属性设为要显示的文字。再使用一个定时器Timer1,使其每隔一段时间改变Label1的Left属性的值。Label1的Left属性的初始值取得大一点,使Label1处在窗体的最右端的外面,程序运行后,此属性的值逐渐变小,使Label1的位置逐渐向左移动,当Left属性的值小于0-Label1的宽度时,即意味着整个Label1已经移到了窗体的最左端的外面,这时,把Left的值再改为初始的值,也就是又把Label1移到了窗体右端的外面,这样周而复始,循环显示,大功告成。

程序实例:

l 在Form1中的控件:

(1)Label1

Caption="Visual Basic 动画演示棗滚动字幕"

Autosize=True

BackStyle=0 (透明)

FontBold=True

FontSize=16

(2)为构成一种阴影效果,再复制一个Label2,调整Label2的位置使其比Label1略高,并将它的文字颜色改得淡一些(设置为蓝色或红色)。

(3)Timer1

Interval=100 (0.1秒)

l 程序代码:

Private Sub Form_Load()

Form1.BackColor = RGB(192, 192, 192) '窗体设为灰色

Label1.ForeColor = RGB(128, 128, 128) '文字阴影设为深灰色

Label2.ForeColor = RGB(255, 0, 255) '文字颜色设为粉红色

Label1.Left = Width + 50 '文字的初始位置:在窗体右端外

Label2.Left = Width

End Sub

Private Sub Timer1_Timer()

If Label1.Left < 0 - Label1.Width Then '如果文字移到窗体左端之外,

Label1.Left = Width + 50 '则将它的位置立即移回到初始位置

Label2.Left = Width

End If

Label1.Left = Label1.Left – 100 '否则文字位置向左移100个单位

Label2.Left = Label2.Left – 100

End Sub

如果要改进滚动效果,使文字的左面一部分从窗体左端出去以后,立即从右端进入窗体,则可将程序代码作如下修改:

Private Sub Form_Load()

Form1.BackColor = RGB(192, 192, 192)

Label1.ForeColor = RGB(255, 0, 255) '取消阴影,使两段文字完全相同

Label2.ForeColor = RGB(255, 0, 255)

Label1.Left = 0 '一段文字放在最左端

Label2.Left = -Width '一段文字放在最左端的外面,与Label1

End Sub '相差一个窗体距离

Private Sub Timer1_Timer()

Label1.Left = Label1.Left – 50 '两段文字同时向左移

Label2.Left = Label2.Left – 50

If Label1.Left <= -Width Then '当文字在窗体外再走完一个窗体的距离时,

Label1.Left = Width '又进入窗体

End If

If Label2.Left <= -Width Then

Label2.Left = Width

End If

End Sub

 

我在这里学编程应用篇 共45页[1 2 3 4 5 6 7 >»<... 最后一页]