timer问题
- VB code
Public start As BooleanPrivate Sub Command4_Click()start=falseTimer1.Enabled = TrueEnd SubPrivate Sub Timer1_Timer()start = TrueTimer1.Interval = 1000Shape14.Height = 10Do While start = TrueIf Shape14.Height > 2000 Or start = False ThenExit DoTimer1.Enable = FlaseElseShape14.Height = Shape14.Height + 10End IfLoopEnd Sub
我想用一个按钮控制一个Start=Ture 进入这个状态shape14的高度就增加10每秒 一旦高度过2000或者start信号=false就停止增加高度...
程序哪里有问题了?
[解决办法]
可能的原因是你没有初始化Timer1.Interval Command4改成:
- VB code
Private Sub Command4_Click()start=falseTimer1.Interval=1000 '添加这句Timer1.Enabled = TrueEnd Sub
[解决办法]
- VB code
Private Sub Command4_Click() Timer1.Enabled = True Timer1.Interval = 1000 '这个直接在窗体是设置就可以了 Shape14.Height = 100End SubPrivate Sub Timer1_Timer() If Shape14.Height < 2000 Then Shape14.Height = Shape14.Height + 100 Shape14.Top = Shape14.Top - 100 '应该向上增长吧,你的是向下长...... Else Timer1.Enabled = False End IfEnd Sub
[解决办法]
Public start As Boolean
Private Sub Command4_Click()
Timer1.Enabled = True
Timer1.Interval = 1000
Shape14.Height = 10
End Sub
Private Sub Timer1_Timer()
If Shape14.Height > 2000 Then
Timer1.Enable = Flase
Else
Shape14.Height = Shape14.Height + 10
End If
End Sub
[解决办法]
'你的DO WHILE 。。。。LOOP语法用错了,应该是START=FALSE ,不然就用 DO UNTIL 。。。LOOP
,应该你那大体的错误就是这样
[解决办法]
Shape14.Height = 10
去掉这个