Von 100 Runterzählen

  • VB6

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Dodo.

    Von 100 Runterzählen

    Hay ich habe das ne ganz wichtige frage kann mir vllt jmd den code für ein programm geben das von 100 auf 0 in sekundenschrittenzählt und das in einem lable ausgibt.
    Zusätzlich soll beim start eine inputbox kommen in die man eine zahl zwischen 100 und 0 eingibt und wenn das programm die zahl erreicht hat soll eine msgbox aufgehen in der irgendwas steht(ist egal was)
    Ich komme das nicht weiter habe schon schleifen probiert also for...next und do while loop und so was.
    Genau so habich ganz normale timer getestet aba irgendwie leuft das nicht pls need schnell help!!!
    Schon mal danke im vorraus
    MFG
    Philipp
    Edit: Ich benutze übrigens VB6 falls wichtig

    Das Thema wurde verschoben (von Chrisber)

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Chrisber“ ()

    Ein Timer, Intervall auf 1000ms stellen. Eine Variable Global deklarieren und auf den Wert 100 setzten. Im Timer einfache Formel

    Variable = Variable - 1

    dann eine If Bedingung wo die Variable auf den entsprechenden Wert prüfst.
    Weiter darfst du selbst suchen, denn das gehört zu den Basics. Sowas sollte man können bzw. wissen wenn man programmieren möchte.
    Hilfe findest du im INet wenn nach "vb.net galileo openbooks" googlest.
    Tut mir leid das ich so unerfahren bin fange erst gerade damit inner schule an aba irwie zeigt er mir an das der wert (oda wie das heißt) global falsch ist ( ist rot) bei mir steht jetzt das

    Private Sub cmdstart_Click()
    tmr1.Enabled = True
    End Sub

    Private Sub tmr1_Timer()
    Dim z as Global
    Dim e As Integer
    z = 100
    z = z - 1
    e = InputBox("lol")
    lbla.Caption = z
    If z = e Then
    MsgBox ("asd")
    End If
    End Sub
    Also, mit VB6 kenn ich mich nicht so gut aus.

    Aber Versuche es mal so:

    Visual Basic-Quellcode

    1. Private Sub cmdstart_Click()
    2. tmr1.Enabled = True
    3. End Sub
    4. Private Sekunden As Integer = 100
    5. Private Sub tmr1_Timer()
    6. Sekunden = Sekunden - 1
    7. If Sekunden <= 0 Then
    8. 'Das passiert wenn die Zeit abgelaufen ist.
    9. End If
    10. End Sub


    Sry. wenn ich mich täusche. Korrigiert mich sonst. :D
    Nunja auch wenn du erst anfängst solltest du dir mal ein Buch oder ähnliches zur Hand genommen haben um erstmal zu verstehen was du da überhaupt machst.

    Ich habe nicht gesagt du sollst eine Variable ALS Global Deklarieren sondern die Variable GLOBAL Deklarieren. Heißt also NICHT in einer Sub Routine, da sie dann nur dort verwendbar ist.

    So dann das Private Sub Timer1_Tick() Event wird bei jedem Tick ausgeführt, heißt also alle 1000ms. So jetzt überlegen wir mal was da passiert:
    Der Tick wird ausgelöst, die Variable wird Deklariert. Die Varibale wird auf 100 gesetzt, von der Variablen wird 1 abgezogen, es kommt die Inputbox und danach wird die Eingabe der Inputbox mit der Variablen verglichen.

    Beim nächsten Tick wird eben jenes nochmal ausgeführt, wir merken dass hier irgendwas nicht stimmt, denn die Variable wird immer 100 - 1 also 99 haben und jede Sekunde kommt die Inputbox.

    So jetzt bekommste PseudoCode von mir:

    Variable z als Integer
    Variable e als Integer

    Button1 Click:
    z mit 100 befüllen
    e ist Rückgabe der Inputbox
    Timer starten

    Timer1 Tick:
    z mit e vergleichen, wenn es gleich ist Timer1 Stoppen und Messagebox ausgeben
    1 von z abziehen
    überprüfen ob z noch größer als 0, wenn nicht Timer1 stoppen