Ich bin neu in Visual Basic und ich versuche, eine Reihe von Codes in einem vom Benutzer eingestellten Zeitintervall zu laufen welche letztere kann jederzeit aus dem Textfeld ändern. bitte füge die von mir erstellte Schnittstelle an.Wie man einen Timer im Visual Basic steuert, wo das Zeitintervall des Timers vom Benutzer aus einer Textbox gesetzt wird
Antwort
Ich werde Ihnen vorschlagen, jedes Mal, setzen Sie das Intervall Wert, dass der Benutzer Integer Wert innerhalb des TextBox durch den Umgang mit den TextBox.TextChanged
Ereignis ein Recht setzt (können Sie hinzufügen oder keine richtige fehler- Handhabung).
Ein Beispiel:
Friend WithEvents Timer1 As New System.Windows.Forms.Timer
Private Sub ResetTimerInterval(ByVal tmr As Timer, ByVal interval As Integer)
If (tmr IsNot Nothing) Then
With tmr
.Stop()
.Enabled = False
.Interval = interval
.Enabled = True
.Start()
End With
End If
End Sub
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) _
Handles TextBox1.TextChanged
Dim value As Integer
If Integer.TryParse(DirectCast(sender, TextBox).Text, value) Then
Me.ResetTimerInterval(value)
End If
End Sub
Wenn Sie auch das aktuelle Intervall wissen möchten, können Sie es verfolgen, indem Sie eine Eigenschaft hinzufügen:
Friend WithEvents Timer1 As New System.Windows.Forms.Timer
Private Property TimerInverval As Integer
Get
Return Me.timerIntervalB
End Get
Set(ByVal value As Integer)
If (value <> Me.timerIntervalB) Then
Me.timerIntervalB = value
Me.ResetTimerInterval(value)
End If
End Set
End Property
' Backing field.
Private timerIntervalB As Integer
Private Sub ResetTimerInterval(ByVal tmr As Timer, ByVal interval As Integer)
If (tmr IsNot Nothing) Then
With tmr
.Stop()
.Enabled = False
.Interval = interval
.Enabled = True
.Start()
End With
End If
End Sub
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) _
Handles TextBox1.TextChanged
Dim value As Integer
If Integer.TryParse(DirectCast(sender, TextBox).Text, value) Then
Me.timerIntervalB = value
End If
End Sub
Vielen Dank für Ihre wertvolle Hilfe. Werde es versuchen. – luvin
@luvin Ich bin froh zu helfen. Bitte denken Sie daran, meine Antwort als akzeptiert zu markieren, wenn es das Problem gelöst hat, danke und willkommen bei SO. – ElektroStudios
'Ich versuche, ... 'und wo ist der code der eigentlich versucht irgendwas zu machen? Schwer zu führen Sie ohne den Code – Plutonix
Zeigen Sie uns, was Sie bereits versucht haben. Wir werden keine vollständigen Lösungen erstellen, aber wir werden Ihnen helfen, Bugs zu beheben. – SubliemeSiem