Brauche Hilfe für mein Quiz!

  • VB.NET

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von Techniker.

    Brauche Hilfe für mein Quiz!

    Hallo ich lerne grade erst Visual Basic hab vor 1 Woche oder so angefangen,

    Ich habe mir so gedacht ein kleines Quiz Programm zu erstellen aber ich verfranze mich
    irgendwie dauernd xD ich habe eine kleine Vorlage verwendet und dann erweitert aber
    ab jetzt funktioniert irgendwie nix mehr könntet ihr euch mal mein Source angucken
    und mir sagen wo ich Fehler gemacht habe ?

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim Status As Integer = 0
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. If Status = 0 Then
    5. 'Frage stellen
    6. FrageStellen(1)
    7. TextBox1.Enabled = True
    8. Button1.Text = "Weiter"
    9. ElseIf Status = 1 Then
    10. AntwortTesten(1)
    11. ElseIf Status = 1 Then
    12. FrageStellen(2)
    13. ElseIf Status = 2 Then
    14. AntwortTesten(2)
    15. ElseIf Status = 2 Then
    16. FrageStellen(3)
    17. ElseIf Status = 3 Then
    18. AntwortTesten(3)
    19. ElseIf Status = 3 Then
    20. FrageStellen(4)
    21. ElseIf Status = 4 Then
    22. AntwortTesten(4)
    23. ElseIf Status = 4 Then
    24. FrageStellen(5)
    25. ElseIf Status = 5 Then
    26. AntwortTesten(5)
    27. ElseIf Status = 5 Then
    28. FrageStellen(6)
    29. ElseIf Status = 6 Then
    30. AntwortTesten(6)
    31. ElseIf Status = 6 Then
    32. FrageStellen(7)
    33. ElseIf Status = 7 Then
    34. AntwortTesten(7)
    35. ElseIf Status = 7 Then
    36. FrageStellen(8)
    37. ElseIf Status = 8 Then
    38. AntwortTesten(8)
    39. ElseIf Status = 8 Then
    40. FrageStellen(9)
    41. ElseIf Status = 9 Then
    42. AntwortTesten(9)
    43. ElseIf Status = 9 Then
    44. FrageStellen(10)
    45. ElseIf Status = 10 Then
    46. AntwortTesten(10)
    47. TextBox1.Enabled = False
    48. TextBox1.Text = ""
    49. Label1.Text = "Fertig. Nochmal spielen?"
    50. Button1.Text = "Ja"
    51. Status = 0
    52. End If
    53. End Sub
    54. Private Sub FrageStellen(ByVal FrageNr As Integer)
    55. If FrageNr = 1 Then
    56. Label2.Text = "Frage: 1/10"
    57. Label1.Text = "DEINE FRAGE"
    58. Status = Status + 1
    59. ElseIf FrageNr = 2 Then
    60. Label2.Text = "Frage: 2/10"
    61. Label1.Text = "DEINE FRAGE"
    62. Status = Status + 1
    63. ElseIf FrageNr = 3 Then
    64. Label2.Text = "Frage: 3/10"
    65. Label1.Text = "DEINE FRAGE"
    66. Status = Status + 1
    67. ElseIf FrageNr = 4 Then
    68. Label2.Text = "Frage: 4/10"
    69. Label1.Text = "DEINE FRAGE"
    70. Status = Status + 1
    71. ElseIf FrageNr = 5 Then
    72. Label2.Text = "Frage: 5/10"
    73. Label1.Text = "DEINE FRAGE"
    74. Status = Status + 1
    75. ElseIf FrageNr = 6 Then
    76. Label2.Text = "Frage: 6/10"
    77. Label1.Text = "DEINE FRAGE"
    78. Status = Status + 1
    79. ElseIf FrageNr = 7 Then
    80. Label2.Text = "Frage: 7/10"
    81. Label1.Text = "DEINE FRAGE"
    82. Status = Status + 1
    83. ElseIf FrageNr = 8 Then
    84. Label2.Text = "Frage: 8/10"
    85. Label1.Text = "DEINE FRAGE"
    86. Status = Status + 1
    87. ElseIf FrageNr = 9 Then
    88. Label2.Text = "Frage: 9/10"
    89. Label1.Text = "DEINE FRAGE"
    90. Status = Status + 1
    91. ElseIf FrageNr = 10 Then
    92. Label2.Text = "Frage: 10/10"
    93. Label1.Text = "DEINE FRAGE"
    94. Status = Status + 1
    95. End If
    96. TextBox1.Text = ""
    97. TextBox1.Focus()
    98. End Sub
    99. Private Sub AntwortTesten(ByVal FrageNr As Integer)
    100. If TextBox1.Text = "" Then
    101. MsgBox("Bitte füllen sie das Feld aus!", MsgBoxStyle.OkOnly, "Frage")
    102. ElseIf FrageNr = 1 Then
    103. If TextBox1.Text = "DEINE ANTWORT" Then
    104. Label1.Text = "Richtig"
    105. Status = Status + 1
    106. Else
    107. Label1.Text = "Falsch"
    108. End If
    109. ElseIf FrageNr = 2 Then
    110. If TextBox1.Text = "DEINE ANTWORT" Then
    111. Label1.Text = "Richtig"
    112. Status = Status + 1
    113. Else
    114. Label1.Text = "Falsch"
    115. End If
    116. ElseIf FrageNr = 3 Then
    117. If TextBox1.Text = "DEINE ANTWORT" Then
    118. Label1.Text = "Richtig"
    119. Status = Status + 1
    120. Else
    121. Label1.Text = "Falsch"
    122. End If
    123. ElseIf FrageNr = 4 Then
    124. If TextBox1.Text = "DEINE ANTWORT" Then
    125. Label1.Text = "Richtig"
    126. Status = Status + 1
    127. Else
    128. Label1.Text = "Falsch"
    129. End If
    130. ElseIf FrageNr = 5 Then
    131. If TextBox1.Text = "DEINE ANTWORT" Then
    132. Label1.Text = "Richtig"
    133. Status = Status + 1
    134. Else
    135. Label1.Text = "Falsch"
    136. End If
    137. ElseIf FrageNr = 6 Then
    138. If TextBox1.Text = "DEINE ANTWORT" Then
    139. Label1.Text = "Richtig"
    140. Status = Status + 1
    141. Else
    142. Label1.Text = "Falsch"
    143. End If
    144. ElseIf FrageNr = 7 Then
    145. If TextBox1.Text = "DEINE ANTWORT" Then
    146. Label1.Text = "Richtig"
    147. Status = Status + 1
    148. Else
    149. Label1.Text = "Falsch"
    150. End If
    151. ElseIf FrageNr = 8 Then
    152. If TextBox1.Text = "DEINE ANTWORT" Then
    153. Label1.Text = "Richtig"
    154. Status = Status + 1
    155. Else
    156. Label1.Text = "Falsch"
    157. End If
    158. ElseIf FrageNr = 9 Then
    159. If TextBox1.Text = "DEINE ANTWORT" Then
    160. Label1.Text = "Richtig"
    161. Status = Status + 1
    162. Else
    163. Label1.Text = "Falsch"
    164. End If
    165. ElseIf FrageNr = 10 Then
    166. If TextBox1.Text = "DEINE ANTWORT" Then
    167. Label1.Text = "Richtig"
    168. Status = Status + 1
    169. Else
    170. Label1.Text = "Falsch"
    171. End If
    172. End If
    173. End Sub


    Mfg Techniker
    Funktioniert nicht ... so, so ...
    (ist KEINE Fehlerbeschreibung)

    BTW: Stell dir mal vor, dein Quiz hätte 1.000 Fragen. Wie würde dein Code aussehen? 1000 mal IF ... THEN ? Da das offensichtlich nicht sinnvoll sein kann, würde ich noch mal scharf nachgrübeln - oder das Buch erstmal zu Ende lesen!
    Es sollen ja nur 10 Fragen sein und ich als Anfänger habe mir gedacht das es immer das gleiche wäre,
    ja die Fehlerbeschreibung ist garnicht beschrieben.

    Wie soll ich das beschreiben es funktioniert nix die ersten 3 Fragen + Antworten habe geklappt ohne Probleme
    aber danach ging nix mehr, und jetzt wo ich den Code nochma bearbeitet habe funktioniert nix mehr
    rein garnix mehr deswegen frage ich ja nach wo der Fehler ist.

    Und das Buch handelt ALLGEMEIN über Visual Basic nicht über ein Quiz Programm ich habe mir halt ma gedacht
    das ich es mal versuche und jeder versuch macht klug.

    Mfg Techniker
    Kommt drauf an, was du haben möchtest^^

    Jedenfalls kann ein Teil des Codes nicht funktionieren.

    VB.NET-Quellcode

    1. ElseIf Status = 1 Then
    2. AntwortTesten(1)
    3. ElseIf Status = 1 Then
    4. FrageStellen(2)

    Das ist so als würdest du nach einem Erdbeereis fragen, und nachdem dir der Verkäufer gesagt hat, das sie keines haben, fragst du nochmal O.o ...
    MESS WITH THE BEST, DIE LIKE THE REST! :evil:
    n'paar Links: DNS Tools, Steal WA DB, Droidsheep...
    Wie kommt drauf an? ich wollt doch nurn Quiz machen mit 10 Fragen was muss ich denn machen
    das eine Frage nach der anderen kommt und wenn man was falsches eintippt im label1 Falsch
    steht und wenn man das Richtige eintippt kommt richtig und geht zur nächsten Frage.

    Wie ich oben geschrieben habe, ich habe eine Vorlage verwendet und ich dachte nur das ich diese
    erweitern müsste aber hab wohl falsch gedacht wie bekomme ich es jetzt hin das es funktioniert ?
    @picoflop: .....das ist einfachste von einfachsten....gibs mehrere möglichkeiten wie man Quiz aufbaut.....voraussetzung "Grundkenntnisse" + "logisches denken"

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

    wie wäre es mit einer for-schleife?:

    VB.NET-Quellcode

    1. for i as integer = 1 To 10
    2. FrageStellen(i)
    3. AntwortTesten(i)
    4. Next


    und um das ganze noch etwas schöner zu gestalten könntest du anstatt

    VB.NET-Quellcode

    1. status = status + 1

    VB.NET-Quellcode

    1. status += 1
    verwenden.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „oli-f“ ()