В прилагаемом простейшем примере не могу остановить таймер.
Хотелось бы узнать объяснение этому явлению.
Private Sub cmdRun_Click()
Timer1.Enabled = false
End Sub
Private Sub cmdStop_Click()
Timer1.Interval = 1
Timer1.Enabled = True
End Sub
Private sub cmdReTime_Click()
timer1.enabled = false
timer1.interval = 250
timer1.enabled = true
end sub
Private Sub CmdStop_Click()
Timer1.Enabled = False 'Выключаем таймер
Timer1.Interval = 0 'Обнуляем таймер
End Sub
Private Sub CmdStart_Click()
Timer1.Interval = 1000 'Устанавливаем интервал в одну секунду
Timer1.Enabled = True 'Включаем таймер
End Sub
Private Sub Timer1_Timer()
Debug.Print Time
End Sub
Dim i As Integer
Private Sub cmdStart_Click()
If tmr.Interval < 50 Then tmr.Interval = 1000
tmr.Enabled = True
End Sub
Private Sub cmdStop_Click()
tmr.Enabled = False
End Sub
Private Sub Form_Load()
i = 1000
End Sub
Private Sub tmr_Timer()
Debug.Print i
i = i - 1
tmr.Interval = tmr.Interval - 20
If tmr.Interval < 50 Then
tmr.Enabled = False
MsgBox "Timer stopped"
End If
End Sub
Да вот именно, что разницы нет, за исключеним того, что я не обнуляю интервал таймера перед его остановкой.А разница?
Во-во! Я и не могу понять, в чем проблема...все-равно будет работать.....
Private Sub Command1_Click()
Timer1.Enabled = False
Timer1.Interval = 0
End Sub
Private Sub Command2_Click()
Timer1.Interval = 1000
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
For i = 1 To 50000000
Next
Debug.Print Time
End Sub
Да нет, сработает он через секунду, просто цикл задержит вывод информации. К слову говоря, таймер в VB не сработает второй раз, пока его процедура выполнится не выполниться до конца. Это мы с ANDLL уже обсуждали...срабатывает он явно не через 1 секунду
Twister писал(а):Небольшой оффтоп: автору дали замечание до какого-то там числа. Это означает мини-бан?
Сейчас этот форум просматривают: AhrefsBot и гости: 57