Countdown in Label & und Programm live arbeiten lassen

  • VB.NET

Es gibt 26 Antworten in diesem Thema. Der letzte Beitrag () ist von Kelariel.

    Countdown in Label & und Programm live arbeiten lassen

    Hallo.

    Ich bin ein Neuling und versuche mich gerade in VB selbst zu schulen.
    Dabei wollte ich gern ein kleines Programm schreiben.

    Die Idee ist ein kleine Mathe-Übungs-Programm.
    Es kommt eine Abfrage wieviel Zeit man sich geben will. ( War eigentlich nur eine Maske zum testen, aber nun bleibts einfach drin )
    Danach soll sich die GUI des Hauptprogramms generieren.
    Dabei steht die Zeit als Label in der Ecke. Sobald man auf "los" drückt, soll das Programm zufallszahlen in die anderen Labels generieren und der Countdown starten.
    Anfangs sind die Eingabefelder für die Lösung gesperrt. Beim Starten werden diese writabel. Sobald der Timer abgelaufen ist, werden diese erneut gesperrt und das Ergebnis Kontrolliert.

    Hier ergeben sich im Moment zwei Probleme:

    1. Wie bekomme ich es hin, dass das Programm "live" arbeitet. Wenn ich bei der Hauptmaske angekommen bin und auf los klicke ist das Programm plötzlich "fertig". Dabei funktioniert der Timer in den Einzelschritten.
    2. Wie schaffe ich es, dass sich während der Timerschleife der Text der Countdown-labels ändert? Auf die Naive Weise wie ich es versucht habe funktioniert es jedenfalls nicht.

    Ich hoffe ihr versteht was ich meine und könnt mir helfen.
    Bitte habt Nachsicht mit einem unwissen und versucht möglichle Lösungen bitte "Idiotensicher" zu erklären.

    Nundenn.

    Vielen Dank bereits im Vorfeld.

    Kelariel


    P.S.: Das komplette Programm befindet sich gezipped im Anhang
    Dateien

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Kelariel“ ()

    Also Quellcode wäre mir lieber als die Solution. Ich lad prinzipiell nix runter was ich nicht kenne.

    Mein erster Gedanke ist... Der Timer ist falsch konfiguriert. Wie ist die Tick-Zeit? Hast du bedacht dass diese in Millisekunden angegeben werden?
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Dann versuch ich das mal alles hier reinzukopieren. Ich dachte mir, dass das zusammen mit der GUI eventuell einleuchtender wäre.

    Wie gesagt, in den Einzelschritten wartet der Timer auch seine Sekunde (1000 Millisekunden).


    Erste GUI:


    VB.NET-Quellcode

    1. Public Class Form2
    2. Public Zahl As Object
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. Zahl = TextBox1.Text
    5. Me.Hide()
    6. Form1.Show()
    7. End Sub
    8. End Class



    Zweite GUI ( Hauptprogramm :(



    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim a, b, c, d, f, g, h, i, j, k, l, m, n As Integer
    3. Private Sub namelabel()
    4. i = Label19.Text = Form2.Zahl
    5. End Sub
    6. Private Sub zahlengenerieren()
    7. a = ((10) * Rnd() + 1)
    8. b = ((10) * Rnd() + 1)
    9. d = ((10) * Rnd() + 1)
    10. n = ((10) * Rnd() + 1)
    11. g = ((10) * Rnd() + 1)
    12. h = ((10) * Rnd() + 1)
    13. k = ((10) * Rnd() + 1)
    14. l = ((10) * Rnd() + 1)
    15. End Sub
    16. Private Sub timer()
    17. i = Int(Form2.Zahl)
    18. Do While i > 0
    19. i = i - 1
    20. Label19.Text.Replace(i + 1, i)
    21. Label19.Refresh()
    22. System.Threading.Thread.Sleep(1000)
    23. Loop
    24. ende()
    25. End Sub
    26. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    27. starten()
    28. End Sub
    29. Private Sub starten()
    30. Label2.Text = a
    31. Label4.Text = b
    32. Label9.Text = d
    33. Label7.Text = n
    34. Label13.Text = g
    35. Label11.Text = h
    36. Label17.Text = k
    37. Label15.Text = l
    38. TextBox1.ReadOnly = False
    39. TextBox2.ReadOnly = False
    40. TextBox3.ReadOnly = False
    41. TextBox4.ReadOnly = False
    42. timer()
    43. End Sub
    44. Private Sub ende()
    45. If Form2.Zahl = 0 Then
    46. 'sperren der Eingabefelder
    47. TextBox1.ReadOnly = True
    48. TextBox2.ReadOnly = True
    49. TextBox3.ReadOnly = True
    50. TextBox4.ReadOnly = True
    51. c = a + b
    52. f = d - n
    53. j = g * h
    54. m = k / l
    55. If TextBox1.Text = c Then
    56. Label20.Visible = True
    57. Else : Label21.Visible = True
    58. End If
    59. If TextBox2.Text = f Then
    60. Label23.Visible = True
    61. Else : Label22.Visible = True
    62. End If
    63. If TextBox3.Text = j Then
    64. Label25.Visible = True
    65. Else : Label24.Visible = True
    66. End If
    67. If TextBox4.Text = m Then
    68. Label27.Visible = True
    69. Else : Label26.Visible = True
    70. End If
    71. End If
    72. End Sub
    73. Private Sub Form1_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated
    74. namelabel()
    75. zahlengenerieren()
    76. End Sub
    77. End Class

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Kelariel“ ()

    Demnächst VB Code auch in den VB.Net Tag packen dann siehts gescheit aus.

    Spoiler anzeigen
    Erste GUI:

    VB.NET-Quellcode

    1. Public Class Form2
    2. Public Zahl As Object
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. Zahl = TextBox1.Text
    5. Me.Hide()
    6. Form1.Show()
    7. End Sub
    8. End Class


    Zweite GUI ( Hauptprogramm

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim a, b, c, d, f, g, h, i, j, k, l, m, n As Integer
    3. Private Sub namelabel()
    4. i = Label19.Text = Form2.Zahl
    5. End Sub
    6. Private Sub zahlengenerieren()
    7. a = ((10) * Rnd() + 1)
    8. b = ((10) * Rnd() + 1)
    9. d = ((10) * Rnd() + 1)
    10. n = ((10) * Rnd() + 1)
    11. g = ((10) * Rnd() + 1)
    12. h = ((10) * Rnd() + 1)
    13. k = ((10) * Rnd() + 1)
    14. l = ((10) * Rnd() + 1)
    15. End Sub
    16. Private Sub timer()
    17. i = Int(Form2.Zahl)
    18. Do While i > 0
    19. i = i - 1
    20. Label19.Text.Replace(i + 1, i)
    21. Label19.Refresh()
    22. System.Threading.Thread.Sleep(1000)
    23. Loop
    24. ende()
    25. End Sub
    26. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    27. starten()
    28. End Sub
    29. Private Sub starten()
    30. Label2.Text = a
    31. Label4.Text = b
    32. Label9.Text = d
    33. Label7.Text = n
    34. Label13.Text = g
    35. Label11.Text = h
    36. Label17.Text = k
    37. Label15.Text = l
    38. TextBox1.ReadOnly = False
    39. TextBox2.ReadOnly = False
    40. TextBox3.ReadOnly = False
    41. TextBox4.ReadOnly = False
    42. timer()
    43. End Sub
    44. Private Sub ende()
    45. If Form2.Zahl = 0 Then
    46. 'sperren der Eingabefelder
    47. TextBox1.ReadOnly = True
    48. TextBox2.ReadOnly = True
    49. TextBox3.ReadOnly = True
    50. TextBox4.ReadOnly = True
    51. c = a + b
    52. f = d - n
    53. j = g * h
    54. m = k / l
    55. If TextBox1.Text = c Then
    56. Label20.Visible = True
    57. Else : Label21.Visible = True
    58. End If
    59. If TextBox2.Text = f Then
    60. Label23.Visible = True
    61. Else : Label22.Visible = True
    62. End If
    63. If TextBox3.Text = j Then
    64. Label25.Visible = True
    65. Else : Label24.Visible = True
    66. End If
    67. If TextBox4.Text = m Then
    68. Label27.Visible = True
    69. Else : Label26.Visible = True
    70. End If
    71. End If
    72. End Sub
    73. Private Sub Form1_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated
    74. namelabel()
    75. zahlengenerieren()
    76. End Sub
    77. End Class


    EDIT:
    So erstmal bitte Option Strict On stellen (zu finden unter "My Project --> "Kompilieren", sowie als Grundeinstellung in den VS Settings). Ich habe den Verdacht dass dir dann schon paar Fehlermeldungen um die Ohren schlagen.
    Dann wäre ne richtige Benamung der ganzen Controls sinnvoll. Macht es für nen Außenstehenden einfacher das zu durchschauen.

    Ich les derweil mal den Code weiter ^^
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Ich hatte auf Quellcode geklickt, aber dann hat er es auch eingerückt. Aber leider alles. Beim Absenden wurde es nicht übernommen.
    Wenn ich auf VB.NET klicke passiert leider nichts. Der Button drückt sich nicht und mit dem Text passiert leider auch nichts.
    Also mich hat die Form des Codes bei mir auch geärgert - um das noch zu erwähnen.

    Was Fehlermeldungen angeht: Nein. Es gibt weder eine Warnung noch eine Fehlermeldung.

    Kelariel schrieb:

    Aber leider alles
    Das, was markiert ist, wird entsprechend formatiert.

    Kelariel schrieb:

    VB.NET-Quellcode

    1. System.Threading.Thread.Sleep(1000)
    Was soll das?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Also bei mir fliegt ja schon sofort
    i = Label19.Text = Form2.Zahl
    um die Ohren.
    Also dass keine Fehler gemeldet werden halte ich für nicht wahr.
    I ist nen Integer und du willst nen Text zuweisen.. Das geht schonmal nicht.
    Davon ab dass Form2.Zahl für mich nu auch nicht die eleganteste Methode ist ^^ und du die Formen nicht richtig aufrufst.
    Form1.Show ist... nicht gut. Sehr fehleranfällig.
    Schau dir dazu mal das an
    Dialoge: Instanziierung von Forms und Aufruf von Dialogen
    Währenddessen les ich mal weiter ^^
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Der Code sieht nicht sehr schön aus :/ Ich mach mal hier einige Verbesserungsvorschläge:
    -Rechne mit numerischen Datentypen und nicht mit Strings oder Objects. Bedeutet, dass du "Zahl" durch eine Integer tauschen solltest und den Textbox-Text als Integer parsen solltest(Stichwort TryParse)
    -stelle unbedingt Option Strict On, das wird dir viele Fehler aufzeigen, die zu beheben sind, du kannst einen String nicht einfach in eine Integer umwandeln
    -Werfe des VB6-Zeugs raus, tausche Rnd() durch eine Random-Variable aus und hole dir von ihr die Werte, tausche Int() durch Integer.Parse/TryParse
    -Nutze lieber die Enabled-Property der Textboxen
    -Für sowas ist ein Timer viel geeigneter, dafür brauchst du kein Sleep(da friert sowieso die GUI ein, ist von dem her suboptimal)
    -Ganz wichtig ist, dass du dir Instanzierung angucken solltest, denn du behandelst einen Bauplan einer Form wie eine Instanz, bedeutet du ziehst dir Daten in Prinzip aus dem Nichts(was leider dennoch grob funktioniert, aber Fehler verursacht)

    LG

    RodFromGermany schrieb:

    Kelariel schrieb:

    Aber leider alles
    Das, was markiert ist, wird entsprechend formatiert.


    Jetzt bin ich verwirrt.
    Jetzt gehts plötzlich.
    Ok das ist peinlich.

    Was das soll?
    System.Threading.Thread.Sleep(1000)

    Naja, das soll eigentlich den 1-Sekunden Timer darstellen...

    -------------------------------------------------------------------------------------

    Also bei mir fliegt ja schon sofort
    i = Label19.Text = Form2.Zahl
    um die Ohren.
    Also dass keine Fehler gemeldet werden halte ich für nicht wahr.


    Eigentlich wollte ich jetzt ein Bild einfügen. Aber auch das will er jetzt nicht.
    Naja hier der Link:
    pic-upload.de/view-27754375/fehler.jpg.html
    Falls dir das nicht geheuer ist schau bei google nach der Domain. Das ist eine meines wissens nach sichere Seite.

    Ich hab damals die Grundlagen in Delphi gelernt. Da war es schön einfach. InttoStr und StrtoInt. Geht hier nicht ganz so einfach.
    Dass es nicht die eleganteste Methode ist glaube ich dir aufs Wort.
    Aber wie gesagt. Das ist das erste was ich selbst bastel. Das kann nicht auf anhieb gut werden. :D

    Danke für den Link. Das werd ich mir mal ansehen.

    ------------------------------------------

    Der Code sieht nicht sehr schön aus Ich mach mal hier einige Verbesserungsvorschläge: [....]


    TypeParse und Option strickt on werd ich mir mal ansehen. Danke schonmal dafür.
    Bisher hab ich unten einfach immer nur die Fehlerliste offen.
    Ja ich wollte ja ein Timer benutzen. Aber ich habe patu nach mehreren Stunden googeln nichts gefunden. Und irgendwelche API's inportieren wollte ich auch nicht.
    Stimmt, wenn die GUI einfriert macht das keinen sinn, man soll ja dabei tippen können.

    Danke erstmal an alle. Ich werd mal schauen was ich umgesetzt bekomme.
    Das Thema lass ich aber erstmal dennoch offen.


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

    Also fangen wir mal mit den Grundlagen an und dann arbeiten wir uns langsam durch.
    Erst einmal bitte Option Strict On!
    Unter "My Project" --> "Kompilieren" --> Option Strict: On

    Dann fangen wir langsam an.
    Ich denke deine Startform wird Form2 sein.
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D

    Kelariel schrieb:

    VB.NET-Quellcode

    1. If Form2.Zahl = 0 Then
    Gugst Du hier.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Zu Timer musst du nix googlen. Einfach im Werkzeugkasten "Timer" suchen, auf die Form ziehen, den Interval festlegen und das entsprechende Event des Timers abonnieren (Doppelklick auf den Timer). Den Timer kannst du dann starten und stoppen. Dafür braucht man überhaupt keine APIs, zumal VB.Net mehrere Timer besitzt.

    LG

    MemoAnMichSelbst schrieb:

    Also
    fangen wir mal mit den Grundlagen an und dann arbeiten wir uns langsam
    durch.
    Erst einmal bitte Option Strict On!
    Unter "My Project" --> "Kompilieren" --> Option Strict: On

    Dann fangen wir langsam an.
    Ich denke deine Startform wird Form2 sein.


    Das ist eine gute Idee.
    Strickt on habe ich nun angeschalten und plötzlich: 25 neue Fehlermeldungen.
    Ja genau. Die Startform ist Form2. Die habe ich auch schon unter "Anwendung" als Startform eingestellt.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Kelariel“ ()

    Dann würde ich mal sagen fangen wir mit den 25 Fehlermeldungen an ;)
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D

    Kelariel schrieb:

    Ja genau. Die Startform ist Form2
    Du sollst die Form als Instanz aufrufen, nicht in diesem dämlichen VB6-Kompatibilitätsmodus.

    VB.NET-Quellcode

    1. Dim dlg = New FormX
    2. ' und dann dlg verwenden
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Die Frage ist:
    Warum ist sowas ausschaltbar?
    Es darf ja nicht sein, dass dann dadurch so viele Fehler entstehen.

    Gut also es sind eine riesige Anzahl an String und Integer-Meldungen.
    Denen werd ich mich mal annehmen und dann hier nochmal Editieren




    So, ich bin durch. Jetzt beschwert er sich nur noch bei dieser Zeile:

    VB.NET-Quellcode

    1. Label19.Text.Replace(i + 1, i)
    2. Label19.Refresh()
    3. System.Threading.Thread.Sleep(1000)


    Da werd ich das gleich mit dem Timer aus der Toolbox versuche. Die Frage ist dennoch: Wie kann ich das Label verändern in jedem Durchlauf?
    In den Einzelschritten läuft er alles durch. Aber erst wenn er mit Form1 durch ist, zeigt er mir die GUI richtig an.

    Soweit wirkt jetzt alles etwas plausibler:

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim a, b, c, d, f, g, h, i, j, k, l, m, n As Integer
    3. Private Sub namelabel()
    4. Label19.Text = CStr(Form2.Zahl)
    5. i = CInt(Label19.Text)
    6. End Sub
    7. Private Sub zahlengenerieren()
    8. a = CInt(((10) * Rnd() + 1))
    9. b = CInt(((10) * Rnd() + 1))
    10. d = CInt(((10) * Rnd() + 1))
    11. n = CInt(((10) * Rnd() + 1))
    12. g = CInt(((10) * Rnd() + 1))
    13. h = CInt(((10) * Rnd() + 1))
    14. k = CInt(((10) * Rnd() + 1))
    15. l = CInt(((10) * Rnd() + 1))
    16. End Sub
    17. Private Sub timer()
    18. i = CInt(Form2.Zahl)
    19. Do While i > 0
    20. i = i - 1
    21. Label19.Text.Replace(i + 1, i)
    22. Label19.Refresh()
    23. System.Threading.Thread.Sleep(1000)
    24. Loop
    25. ende()
    26. End Sub
    27. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    28. starten()
    29. End Sub
    30. Private Sub starten()
    31. Label2.Text = CStr(a)
    32. Label4.Text = CStr(b)
    33. Label9.Text = CStr(d)
    34. Label7.Text = CStr(n)
    35. Label13.Text = CStr(g)
    36. Label11.Text = CStr(h)
    37. Label17.Text = CStr(k)
    38. Label15.Text = CStr(l)
    39. TextBox1.ReadOnly = False
    40. TextBox2.ReadOnly = False
    41. TextBox3.ReadOnly = False
    42. TextBox4.ReadOnly = False
    43. timer()
    44. End Sub
    45. Private Sub ende()
    46. If Form2.Zahl Is CStr(0) Then
    47. 'sperren der Eingabefelder
    48. TextBox1.ReadOnly = True
    49. TextBox2.ReadOnly = True
    50. TextBox3.ReadOnly = True
    51. TextBox4.ReadOnly = True
    52. c = a + b
    53. f = d - n
    54. j = g * h
    55. m = CInt(k / l)
    56. If CDbl(TextBox1.Text) = c Then
    57. Label20.Visible = True
    58. Else : Label21.Visible = True
    59. End If
    60. If CDbl(TextBox2.Text) = f Then
    61. Label23.Visible = True
    62. Else : Label22.Visible = True
    63. End If
    64. If CDbl(TextBox3.Text) = j Then
    65. Label25.Visible = True
    66. Else : Label24.Visible = True
    67. End If
    68. If CDbl(TextBox4.Text) = m Then
    69. Label27.Visible = True
    70. Else : Label26.Visible = True
    71. End If
    72. End If
    73. End Sub
    74. Private Sub Form1_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated
    75. namelabel()
    76. zahlengenerieren()
    77. End Sub
    78. End Class


    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Kelariel“ ()

    Es ist ne Bequemlichkeitsoption die "vermutet" was du meinst.
    Das geht aber gern nach hinten los und gerade zum lernen ist es... schwierig
    Und denk an das was der Rod hier schreibt. Ich habe oben einen Beitrag verlinkt wie man richtig von einer Form eine weitere aufruft und wie man Werte übergibt.
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D

    Kelariel schrieb:

    Die Frage ist:
    Warum ist sowas ausschaltbar?
    Das war eine falsche Grundsatz-Entscheidung von Microsoft, mit Rücksicht auf Abwärts-Pseudo-Kompatiblität mit vb6.
    Die Abwärts-Kompatiblität hat nie funktionniert, aber die Fehl-Entscheidung ist geblieben.
    Ist nicht zu ändern, und daher muss jedem , der mit vb.net anfängt, gesagt werden, dass und wie er es vernünftig einstellen kann.

    Wenn du grad beim Thread-Editieren bist, stell bitte auch das Thread-Label um von VB6 auf vb.net.
    Schau dir das mal an.
    Hab ich nur kurz zusammengeklickt. Hat kein Anrecht auf 100%ige Korrektheit XD
    Dateien
    • Mathetest.zip

      (564,49 kB, 105 mal heruntergeladen, zuletzt: )
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D

    MemoAnMichSelbst schrieb:

    Es ist ne Bequemlichkeitsoption die "vermutet" was du meinst.
    Das geht aber gern nach hinten los und gerade zum lernen ist es... schwierig
    Und denk an das was der Rod hier schreibt. Ich habe oben einen Beitrag verlinkt wie man richtig von einer Form eine weitere aufruft und wie man Werte übergibt.




    Schau dir das mal an.

    Hab ich nur kurz zusammengeklickt. Hat kein Anrecht auf 100%ige Korrektheit XD

    Dateien:
    Mathetest.zip
    (564,49 kB, 2 mal heruntergeladen, zuletzt: Heute, 13:58)


    Ich bin gerade dabei mir das was Rod im Link eschrieben hat durchzulesen. Das war für mich erstmal noch schwere Kost.

    Okay dein Programm funktionert augenscheinlich genau so wie ich das wollte.
    Und mensch.. dein Quellcode sieht doch fast genauso aus wie meiner :D ... nicht ^^"

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Kelariel“ ()