求一个文本水平移动的小程序,别闪烁啊
刚学VB,要做个作业啊。急急急1:一个水平文本滚动条,上面从左到右循环滚动显示文本: 比如:‘欢迎xxx来我校访问,xxx是著名的计算机科学家,将给我们讲座。。。’
2:文本从文件读取
3:当文本比较长的时候,屏幕不要闪烁。我用picturebox控件的move,但是文本长了闪烁不停啊,用两个picturebox控件交替显示好像要好点,不知道有没有更好的办法啊,最后有源代码,让我先应付过去啊
程序代码:Option Explicit
Const y1 = 100
Const y2 = 1000
Const y3 = 2000
Const y4 = 3000
Dim wzx As Long
Dim wtext As String
Dim wzwidth As Long
Private Sub Form_Load()
wtext = "当文本比较长的时候,屏幕不要闪烁。我用picturebox控件的move,但是文本长了闪烁不停啊,用两个picturebox控件交替显示好像要好点,不知道有没有更好的办法啊,最后有源代码,让我先应付过去啊"
Label1.AutoSize = True '设置自动大小
Label1.Caption = wtext '写入文字
wzwidth = Label1.Width '取宽度
Picture1.AutoRedraw = True '设置持久输出
Picture1.BorderStyle = 0 '无边框
Picture1.BackColor = &H8000000F '背景与窗体相同
Picture1.Width = wzwidth '设宽度
Picture1.Print wtext '输出文本
Timer1.Interval = 10 '定时器
Label1.Move 0, y1 '坐标
Picture1.Move 0, y2 '坐标
End Sub
Private Sub Timer1_Timer()
'坐标变化
wzx = wzx + 15
If wzx > Me.ScaleWidth Then wzx = -wzwidth
'方法一
Label1.Left = wzx
'方法二
Me.Line (0, y3)-(Me.ScaleWidth, y3 + 500), Me.BackColor, BF '清屏
Me.PaintPicture Picture1.Image, wzx, y3
'方法三
Me.Line (0, y4)-(Me.ScaleWidth, y4 + 500), Me.BackColor, BF '清屏
Me.CurrentX = wzx
Me.CurrentY = y4
Me.Print wtext
'方法四
Picture1.Left = wzx
End Sub
