Button 2 mal benutzen

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von nawiat.

    Button 2 mal benutzen

    Hallo alle zusammen!

    ich will mein Button 2 mal drücken können, das er aber beim 2 mal drücken etwas anderes macht und dabei noch drauf achtet was in der TextBox1 steht

    Spoiler anzeigen

    VB.NET-Quellcode

    1. Imports System.IO
    2. Public Class Form1
    3. Dim intro_i As Integer = 0
    4. Dim intro_array As Char()
    5. Dim intro_ii As Integer = 0
    6. Dim intro_arrayy As Char()
    7. Dim intro_iii As Integer = 0
    8. Dim intro_arrayyy As Char()
    9. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    10. Tutorial.Close()
    11. Dim Name As String = SplashScreen1.dein_Name
    12. Speech(" " & Name & ", Du findest dich in eine Leeren Haus wieder, Was machst du jetzt?" & vbNewLine & "" & vbNewLine & "1. schau dich in den Haus genauer um!" & vbNewLine & "2. geh nach drausen!", 10)
    13. End Sub
    14. Private Sub Text1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Text1.Tick
    15. If intro_i < intro_array.Length Then
    16. Label1.Text = Label1.Text & intro_array(intro_i)
    17. intro_i = intro_i + 1
    18. If intro_i = intro_array.Length Then
    19. Text1.Stop()
    20. Button2.Visible = True
    21. End If
    22. Else
    23. End If
    24. End Sub
    25. Private Sub Text2_Tick(sender As System.Object, e As System.EventArgs) Handles Text2.Tick
    26. If intro_ii < intro_arrayy.Length Then
    27. Label1.Text = Label1.Text & intro_arrayy(intro_ii)
    28. intro_ii = intro_ii + 1
    29. If intro_ii = intro_arrayy.Length Then
    30. Text2.Stop()
    31. End If
    32. Else
    33. End If
    34. End Sub
    35. Private Sub Text3_Tick(sender As System.Object, e As System.EventArgs) Handles Text3.Tick
    36. If intro_iii < intro_arrayyy.Length Then
    37. Label1.Text = Label1.Text & intro_arrayyy(intro_iii)
    38. intro_iii = intro_iii + 1
    39. If intro_iii = intro_arrayyy.Length Then
    40. Text3.Stop()
    41. End If
    42. Else
    43. End If
    44. End Sub
    45. Public Function Speech(ByVal text As String, ByVal speed As Integer)
    46. Text1.Interval = speed
    47. intro_array = text.ToCharArray()
    48. Text1.Start()
    49. Return 0
    50. End Function
    51. Public Function Speech2(ByVal text As String, ByVal speed As Integer)
    52. Text2.Interval = speed
    53. intro_arrayy = text.ToCharArray()
    54. Text2.Start()
    55. Return 0
    56. End Function
    57. Public Function Speech3(ByVal text As String, ByVal speed As Integer)
    58. Text3.Interval = speed
    59. intro_arrayy = text.ToCharArray()
    60. Text3.Start()
    61. Return 0
    62. End Function
    63. Private Sub Antwort1()
    64. Speech2("" & vbNewLine & "" & vbNewLine & "Du findest deinen Vater nieder gestochen auf den Boden wieder! an den Messer in seiner Brust ist ein Brief!", 10)
    65. End Sub
    66. Private Sub Antwort2()
    67. Speech3("" & vbNewLine & "" & vbNewLine & "willst du dich nicht erstmal im haus umschauen?" & vbNewLine & "" & vbNewLine & "1. Ja", 10)
    68. End Sub
    69. Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
    70. End
    71. End Sub
    72. Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
    73. MsgBox("Diese Option steht in dieser Version des Spieles nicht zur verfügung!")
    74. End Sub
    75. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    76. MsgBox("Diese Option steht in dieser Version des Spieles nicht zur verfügung!")
    77. End Sub
    78. Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
    79. End Sub
    80. Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
    81. Dim Textnr As Integer = 0
    82. If Textnr = 0 Then
    83. TextBox1.Text = "1"
    84. Antwort1()
    85. TextBox1.ResetText()
    86. Textnr = 1
    87. ElseIf Textnr = 1 Then
    88. TextBox1.Text = "2"
    89. Antwort2()
    90. Textnr = 2
    91. End If
    92. End Sub
    93. End Class


    das mit den Button4 unten geht nur beim ersten mal!

    Hilfe ;(

    MFG
    nawiat
    Nimm ne Variable (Integer) und jedes mal, wenn du drückst, addiere 1 dazu. Dann fragst du mit einer If-Abrage ab, ob dieser Button schonmal gedrückt wurde, wenn ja wie oft.
    Alternativ kannst Du Dir auch eine Ableitung der Button-Klasse erstellen und dieser Ableitung einfach eine Property hinzufügen, die die Klicks mitzählt.

    Alternativ kannst Du auch die .Tag-Property der Button-Klasse nutzen und den Wert da rein schreiben.

    Natürlich funktionieren auch die Beispiele meiner Vorredner, jedoch würdest Du mit einer der o. g. Lösungen Deinen Code klarer gestalten können und IMO gehören solche Sachen zum Button, nicht in die Form-Klasse...

    Aber dies nur am Rande...
    Die Unendlichkeit ist weit. Vor allem gegen Ende. ?(
    Manche Menschen sind gar nicht dumm. Sie haben nur Pech beim Denken. 8o