注册 登录
编程论坛 VB6论坛

求大神指点如何改进才能让 label 控件连续 滚动

a515725155 发布于 2014-04-27 23:00, 477 次点击
Private Sub Form_Load()
    Dim a As Integer
    a = Label1.Left
  
    Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
    Label1.Left = Label1.Left + 30
  
        
   
    If Label1.Left > landForm.Width Then
        Label1.Left = a
    End If
   
End Sub
2 回复
#2
lowxiong2014-04-28 06:56
Dim a As Integer
Private Sub Form_Load()
    a = Label1.Left
    Timer1.Interval = 20
    Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
    Label1.Left = Label1.Left + 30
    If Label1.Left > Me.Width Then Label1.Left = a
End Sub

'参考https://bbs.bccn.net/thread-430217-1-1.html
#3
owenlu19812014-04-28 08:22
Private Sub Form_Load()
    Dim a As Integer
这样定义,a为局部变量,所赋的值只在该段程序有用

Private Sub Timer1_Timer()
    Label1.Left = Label1.Left + 30
    If Label1.Left > Me.Width Then Label1.Left = a    ‘此段程序没有赋值给a,所以a为初始值 0
End Sub

如LS版主,将a定义成全局变量(也可以在公共模块中定义),对于整个窗体中的程序都可用.
1