2015-09-15 4 views
0

Как остановить таймер в своем таймере? Это код до сих пор:VB.NET Остановить таймер по таймеру

Private Sub replyTimer_Tick(sender As Object, e As EventArgs) Handles replyTimer.Tick 
    MsgBox("Hello!") 
    Me.replyTimer.Stop() 
End Sub 

Но по какой-то причине он не останавливается.

+0

Каков интервал на таймере? Если он слишком короткий, он может срабатывать несколько раз, прежде чем у вас есть шанс остановить его. –

+1

Вам нужно будет нажать кнопку OK этого окна сообщений быстрее. Или просто поместите вызов Stop() * до *, вы вызываете MsgBox(). –

ответ

1

Прежде всего:

Включенное свойство для таймера должно быть «False», так что таймер не запускается при загрузке формы.

и вы должны убедиться, что: в других частях вашего кода нет никакой команды или цикла для перезапуска таймера.

и остановить таймер ... вам просто нужно этот код:

Private Sub replyTimer_Tick(sender As Object, e As EventArgs) Handles replyTimer.Tick 
    replyTimer.Stop()  
    MsgBox("Hello!") 
End Sub 

поэтому каждый раз при запуске таймера: сообщение будет трещать, и таймер не будет перезагружен.

Чтобы запустить таймер снова написать:

replytimer.start() 

я надеюсь, что мой ответ был полезен для вас :)

+1

Отправитель должен быть экземпляром ответчика ... вероятно, было бы лучше «DirectCast (отправитель, таймер) .Stop()' –

+0

Правильно, но я думаю, что ответа было достаточно для него ... за то, что ему нужно сделать .... :) –

+0

Спасибо, ребята! Действительно помог моей проблеме. –

Смежные вопросы