VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - Visual Basic 中字符淡出淡入的实现
发表评论(0)作者:, 平台:, 阅读:9463, 日期:2000-03-12
Visual Basic 中字符淡出淡入的实现



将该窗体的属性设置如下:


NAME:DEMO

CAPTION:VB 实现字符的淡入淡出

BACKCOLOR:&H00C0C0C0%, 即背景为灰色


在窗体DEMO 中定义以下窗体变量, 即

在General-declaration 过程中定义色彩参数R,G,B。

Dim r As Integer

Dim g As Integer

Din b As Integer

在Form-load 过程中设置字符色彩初值, 即灰色:

Private Sub Form_Load()

r = 192

g = 192

b = 192

End Sub


在窗体DEMO 中加入一标签,其属性设置如下:

NAME:LABEL1

CAPTION:哈尔滨国投债券交易系统

AUTOSIZE:TRUE,用以实现字符的缩放

BACKSTYLE:0-TRANSPARENT,即透明

FONT:字体为隶书,大小选择为8


在窗体中加入定时器控件,用以完成淡出功能,设置如下:

NAME:OUTTIMER

INTERVAL:50,即隔一秒中断一次,色彩变化一次。


再加入一个定时器,完成淡入功能:

NAME:INTIMER

INTERVAL:50


在OUTTIMER 的TIMER 过程中加入以下代码:

Private Sub Outtimer_Timer()

If r < 255 Then

r = r + 1

Else

r = 255

End If

If g > 3 Then

g = g - 3

Else: g = 0

End If

If b > 3 Then

b = b - 3

Else: b = 0

End If

Label1.FontSize = Label1.FontSize + 0.75

Label1.ForeColor = RGB(r, g, b)

If Label1.FontSize >= 72 Then

Outtimer.Enabled = False

Intimer.Enabled = True

End If

End Sub


在INTIMER 中加入如下代码:

Private Sub Intimer_Timer()

If r > 192 Then

r = r - 1

Else

r = 192

End If

If g < 192 Then

g = g + 3

Else: g = 192

End If

If b < 192 Then

b = b + 3

Else: b = 192

End If

Label1.FontSize = Label1.FontSize - 0.75

Label1.ForeColor = RGB(r, g, b)

If Label1.FontSize <= 8 Then

Intimer.Enabled = False

Outtimer.Enabled = True

End If

End Sub