Timer Interval soll nach 5 sec was ausführen

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von Riggo95.

    Timer Interval soll nach 5 sec was ausführen

    Hallo,

    sry für sone frage ich will das so machen das ich mit meinem button den timer starte und das der dann bei 5sek eine msgbox zeigt soweit ich gelesen hab funzt das irgenntwie mit :

    VB.NET-Quellcode

    1. Timer1.Interval = 5000
    2. msgbox ("funktioniert")

    aber ich bekomm es nicht hin und weiß net wo ich es hinschreiben muss kann mir da pls wer helfen :) ?

    LG Riggo
    Ähm, dein MsgBox-Kram in den Timer, Interval setzen und starten?
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
    das is normal^^ deine msgbox wird bei jedem tick ausgeführt und das starten zählt ebenfalls als tick ...
    also entweder n anderen weg einschlagen oder mit nem bool dazu arbeiten

    im formload: bool init_timer = false
    im timer: if(init_timer == false) { init_timer = true } else { msgbox("text") }
    ggf nach der msgbox den timer deaktivieren sofern die nur einmalig angezeigt werden soll
    Public Boolean mit dem Wert False machen.

    Im Timer dann prüfen ob die Boolean True oder False ist. Wenn False, MsgBox zeigen und Boolean auf True setzen, ansonsten Timmer stoppen.
    „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

    -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.

    Riggo95 schrieb:

    boor hab kein bock nen buch zu lasen um sowas kurzes zu haben kann mir net wer helfen foren sind doch zu helfen oder net ?


    Ja ... aber um zu helfen und nicht um fertigen Code für Paste&Copy zu liefern. ;)

    Zwar hast Du in den Posts meiner Vorredner an sich alle Ansätze drinnen um Dein Problem zu lösen, aber ich fasse nochmal zusammen:

    1. Timer.Intervall = XXXXX setzt nur den Tick-Intervall aber startet den Timer nicht
    2. Timer.Start() startet dann den Timer und Timer.Stop() hält ihn wieder an
    3. Um auf einen Timer-Tick zu reagieren gibt es das Event Timer_Tick, dass wird bei jedem Tick des Timers gefeuert
    4. In Deinem gezeigten Code setzt Du den Timer-Intervall und rufst danach gleich die MsgBox mit der Meldung auf ... was soll also der Code anderes machen als sofort die MsgBox anzuzeigen? Stell den Timer-Intervall auf den gewünschten Tick ein, danach startest Du den Timer und im Event Timer_Tick baust Du dann die MsgBox ein und alles funzt wie Du es Dir wünscht (Timer.Stop() wenn er aufhören soll zu ticken nicht vergessen, sonst haut es Dir unendlich viele MsgBox'en raus).

    Gruß

    Rainer
    ich hab es immernochnet hinbekommen bis jetzt siehts so aus :

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    3. Timer1.Interval = 100
    4. Timer1.Start()
    5. End Sub
    6. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    7. If Timer1_Tick(500) Then ' wie frag ich die 500 (5Sek) ab ??
    8. MsgBox("test")
    9. End If
    10. End Sub
    11. End Class

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    3. Timer1.Interval = 5 * 1000 ' 5 Sec
    4. Timer1.Start()
    5. End Sub
    6. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    7. MsgBox("test")
    8. Timer1.Stop()
    9. End Sub
    10. End Class