Создание таймера в коде

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

    Imports System.IO.File
Imports System.ComponentModel
Imports Microsoft.Win32
Imports System.CodeDom.Compiler
Imports System.Diagnostics
Imports System.Object
Imports System.Threading.Thread
Imports System.Environment
Imports Microsoft.VisualBasic
Imports System.Timers


Module Module1

Dim tmr as new Timer

tmr.Interval = 1000
tmr.Enabled = True
AddHandler tmr.Tick, AddressOf MyTimerTick

Private Sub MyTimerTick (Byval sender as Object, Byval e as EventArgs)
    'my code
End Sub

    Sub Main()

    MyTimerTick.start()

End Sub
End Module

я также попробовал это из https://msdn.microsoft.com/en-us/library/system.timers.timer.enabled(v=vs.110).aspx

Отредактировано:

    Imports System.IO.File
Imports System.ComponentModel
Imports Microsoft.Win32
Imports System.CodeDom.Compiler
Imports System.Diagnostics
Imports System.Object
Imports System.Threading.Thread
Imports System.Environment
Imports Microsoft.VisualBasic
Imports System.Timers


Module Module1
Private aTimer As Timer

Private Sub OnTimedEvent(source As Object, e As System.Timers.ElapsedEventArgs)
         Msgbox("test")
End Sub

 Public Sub Main()

 AddHandler aTimer.Elapsed, AddressOf OnTimedEvent
        aTimer = New System.Timers.Timer()
        aTimer.Interval = 1000
        aTimer.AutoReset = False
        aTimer.Start()
        End sub
End Module

1 ответ

Вы забыли вызвать Timer.Start (). После того, как вы позвоните, свойство таймера будет установлено в значение true, и с него начнутся события.

Кроме того, я вижу, что у вас есть OnTimeEvent в другой процедуре. Это должно быть на уровне модуля, а не вложено в другую процедуру.

Другие вопросы по тегам