Hallo Zusammen,
die Seite hat mir die letzten Tage extrem weitergeholfen, da ich nach ein paar Jahren Pause mich erst wieder reinfuchsen musste.
Ich schreibe zur Zeit ein Programm, um ein variables Byte-Array über einen SerialPort zu schicken, zeitabhängig natürlich. Das Programm steht soweit auch schon, es hängt nur leider an der Zeitsteuerung.
Ich hab meine Problem mal vereinfach in einem Programm dargestellt.
Ich will einen Button drücken, der dann verschiedene Timer startet, allerdings will ich das Timer1 erst zu Ende läuft und dann Timer2 startet. Zur Zeit laufen noch beide Parallel.
Ich habe es mit einer "Do..Loop"-Anweisung innerhalb des Timers probiert. Allerdings wird da das Timer-Intervall nicht berücksichtigt.
Hat da jemand eine Idee oder einen anderen Lösungsansatz um Anweisungen zeitlich nacheinander zu starten, also wie:
Button-->10 min eine Anweisung-->20 min gleiche Anweisung mit anderen Variablen-->10 min.. usw.
Achja, bevor ich es vergesse, ich programmiere VB in Visual Studio Express 2013.
Danke euch schon einmal im Voraus
Alexus
--> Hat sich erledigt.
Manchmal ist die Lösung so einfach, bin allerdings selber erst nach Verfassen des Posts darauf gekommen.
Nur, wen es noch interessiert:
Bin allerdings immer noch offen für elegantere Lösungen
die Seite hat mir die letzten Tage extrem weitergeholfen, da ich nach ein paar Jahren Pause mich erst wieder reinfuchsen musste.
Ich schreibe zur Zeit ein Programm, um ein variables Byte-Array über einen SerialPort zu schicken, zeitabhängig natürlich. Das Programm steht soweit auch schon, es hängt nur leider an der Zeitsteuerung.
Ich hab meine Problem mal vereinfach in einem Programm dargestellt.
Visual Basic-Quellcode
- Public Class Form1
- Dim counter As Integer
- Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
- If counter >= 100 Then
- Timer1.Enabled = False
- counter = 0
- Else
- counter = counter + 1
- Label1.Text = counter.ToString
- End If
- End Sub
- Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
- If counter >= 10 Then
- Timer2.Enabled = False
- counter = 0
- Else
- counter = counter + 1
- Label1.Text = counter.ToString
- End If
- End Sub
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- counter = 0
- Timer1.Enabled = True
- Timer2.Enabled = True
- End Sub
- End Class
Ich will einen Button drücken, der dann verschiedene Timer startet, allerdings will ich das Timer1 erst zu Ende läuft und dann Timer2 startet. Zur Zeit laufen noch beide Parallel.
Ich habe es mit einer "Do..Loop"-Anweisung innerhalb des Timers probiert. Allerdings wird da das Timer-Intervall nicht berücksichtigt.
Hat da jemand eine Idee oder einen anderen Lösungsansatz um Anweisungen zeitlich nacheinander zu starten, also wie:
Button-->10 min eine Anweisung-->20 min gleiche Anweisung mit anderen Variablen-->10 min.. usw.
Achja, bevor ich es vergesse, ich programmiere VB in Visual Studio Express 2013.
Danke euch schon einmal im Voraus
Alexus
--> Hat sich erledigt.
Manchmal ist die Lösung so einfach, bin allerdings selber erst nach Verfassen des Posts darauf gekommen.
Nur, wen es noch interessiert:
Visual Basic-Quellcode
- Public Class Form1
- Dim counter As Integer
- Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
- If counter >= 100 Then
- Timer1.Enabled = False
- counter = 0
- Timer2.Enabled = True
- Else
- counter = counter + 1
- Label1.Text = counter.ToString
- End If
- End Sub
- Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
- If counter >= 10 Then
- Timer2.Enabled = False
- counter = 0
- Else
- counter = counter + 1
- Label1.Text = counter.ToString
- End If
- End Sub
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- counter = 0
- Timer1.Enabled = True
- End Sub
- End Class
Bin allerdings immer noch offen für elegantere Lösungen
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Alexus“ ()