![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
VB怎么用计时器控件实现标签中的字从右向左一直滚动?
刚学到VB中的计时器控件!怎么实现标签中的字从右向左一直滚动?滚动到左边后,再往右滚动!到了右边后,再往左边,就是这样的效果!这一行代码是教程上写的,只能一遍!label...
刚学到VB中的计时器控件! 怎么实现标签中的字从右向左一直滚动?
滚动到左边后,再往右滚动!到了右边后,再往左边,就是这样的效果!
这一行代码是教程上写的,只能一遍!
label1.left=label1.left-50
那位哥们知道的话,给代码说一下! 谢谢!
回答者:hmkikikaki - 魔法师 四级 10-17 20:12 哥们你说的这个挺简单的,适合初学者!问下你 label1.left=me.width
什么意思?me.width不懂,没见过这个!给我说说。,谢谢! 展开
滚动到左边后,再往右滚动!到了右边后,再往左边,就是这样的效果!
这一行代码是教程上写的,只能一遍!
label1.left=label1.left-50
那位哥们知道的话,给代码说一下! 谢谢!
回答者:hmkikikaki - 魔法师 四级 10-17 20:12 哥们你说的这个挺简单的,适合初学者!问下你 label1.left=me.width
什么意思?me.width不懂,没见过这个!给我说说。,谢谢! 展开
3个回答
展开全部
me就是窗体的意思,相当于Form1,me.width就是窗体的宽度
label1.left=me.width就是把label1移到窗体的最右边
这是因为标签滚了一遍就滚到边界外面去了,你需要再把它重新设回界面中来
在label1.left=label1.left-50后面加如下代码
if label1.left<=0 then
label1.left=me.width
end if
再试试看,行了吧?
label1.left=me.width就是把label1移到窗体的最右边
这是因为标签滚了一遍就滚到边界外面去了,你需要再把它重新设回界面中来
在label1.left=label1.left-50后面加如下代码
if label1.left<=0 then
label1.left=me.width
end if
再试试看,行了吧?
展开全部
新建工程,一个按钮,一个label,一个timer
Private Sub Command1_Click()
If Command1.Caption = "开始" Then
Command1.Caption = "停止"
Else
Command1.Caption = "开始"
End If
Timer1.Enabled = Not Timer1.Enabled
End Sub
Private Sub Form_Load()
Timer1.Enabled = False
Timer1.Interval = 10
Command1.Caption = "开始"
Label1.Caption = ""
Label1.AutoSize = True
End Sub
Private Sub Timer1_Timer()
Label1.Caption = Time
Label1.Left = Label1.Left - 10
If Label1.Left + Label1.Width <= 0 Then Label1.Left = Me.Width
End Sub
Private Sub Command1_Click()
If Command1.Caption = "开始" Then
Command1.Caption = "停止"
Else
Command1.Caption = "开始"
End If
Timer1.Enabled = Not Timer1.Enabled
End Sub
Private Sub Form_Load()
Timer1.Enabled = False
Timer1.Interval = 10
Command1.Caption = "开始"
Label1.Caption = ""
Label1.AutoSize = True
End Sub
Private Sub Timer1_Timer()
Label1.Caption = Time
Label1.Left = Label1.Left - 10
If Label1.Left + Label1.Width <= 0 Then Label1.Left = Me.Width
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
'最简单的答案在这里
dim n As Boolean
Dim Mywhere As Boolean
Private Sub Form_Load()
Timer1.Interval = 20
End Sub
Private Sub Timer1_Timer()
If n = False Then
Select Case Label1.Left
Case Is > 0
Label1.Left = Label1.Left - 50
Case Is <= 0
n = True
End Select
Else
Select Case Label1.Left
Case Is < Me.Width - Label1.Width
Label1.Left = Label1.Left + 50
Case Is >= Me.Width - Label1.Width
n = False
End Select
End If
End Sub
dim n As Boolean
Dim Mywhere As Boolean
Private Sub Form_Load()
Timer1.Interval = 20
End Sub
Private Sub Timer1_Timer()
If n = False Then
Select Case Label1.Left
Case Is > 0
Label1.Left = Label1.Left - 50
Case Is <= 0
n = True
End Select
Else
Select Case Label1.Left
Case Is < Me.Width - Label1.Width
Label1.Left = Label1.Left + 50
Case Is >= Me.Width - Label1.Width
n = False
End Select
End If
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询