VB Problem mit Wertzuweisung

  • VB.NET
  • .NET (FX) 3.0–3.5

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

    VB Problem mit Wertzuweisung

    Hallo,

    bin seit heute Registriert und bräuchte mal eure Hilfe. :)

    Ich möchte das den Output eine zahl zugerechnet wird leider bekomme ich wenn ich das ausführe ein 0 im Label.

    Hoffe Ihr könnt mir helfen.

    VB.NET-Quellcode

    1. Dim Outputp As Integer
    2. Dim Outputb As Integer
    3. Dim Outputv As Integer
    4. If vbsek.Checked = True Then
    5. lblgeld.Text += 90
    6. Outputp += 2
    7. Outputv += 1
    8. End If


    lblgeld.Text = Outputb.ToString
    lblpunkt.Text = Outputp.ToString
    lblverbot.Text = Outputv.ToString

    Hier ist der Gesamte Code für das Porgramm:

    VB.NET-Quellcode

    1. Option Strict Off
    2. Public Class frm1
    3. Private Sub bt1_Click_1(sender As Object, e As EventArgs) Handles bt1.Click
    4. Dim input As Integer
    5. Dim Outputp As Integer
    6. Dim Outputb As Integer
    7. Dim Outputv As Integer
    8. input = CInt(Me.txtin.Text)
    9. Select Case input
    10. Case 1 To 10
    11. Outputb = 10
    12. Outputp = 0
    13. Outputv = 0
    14. Case 11 To 15
    15. Outputb = 20
    16. Outputp = 0
    17. Outputv = 0
    18. Case 16 To 20
    19. Outputb = 30
    20. Outputp = 0
    21. Outputv = 0
    22. Case 21 To 25
    23. Outputb = 70
    24. Outputp = 1
    25. Outputv = 0
    26. Case 26 To 30
    27. Outputb = 80
    28. Outputp = 1
    29. Outputv = 1
    30. Case 31 To 40
    31. Outputb = 120
    32. Outputp = 2
    33. Outputv = 1
    34. Case 41 To 50
    35. Outputb = 160
    36. Outputp = 2
    37. Outputv = 1
    38. Case 51 To 60
    39. Outputb = 240
    40. Outputp = 2
    41. Outputv = 1
    42. Case 61 To 70
    43. Outputb = 440
    44. Outputp = 2
    45. Outputv = 2
    46. Case Is > 70
    47. Outputp = 2
    48. Outputv = 3
    49. Outputb = 600
    50. End Select
    51. If Cbinn.Checked = True Then
    52. Select Case input
    53. Case 1 To 10
    54. Outputb = 30
    55. Outputp = 0
    56. Outputv = 0
    57. Case 11 To 15
    58. Outputb = 50
    59. Outputp = 0
    60. Outputv = 0
    61. Case 16 To 20
    62. Outputb = 70
    63. Outputp = 0
    64. Outputv = 0
    65. Case 21 To 25
    66. Outputb = 80
    67. Outputp = 1
    68. Outputv = 0
    69. Case 26 To 30
    70. Outputb = 100
    71. Outputp = 1
    72. Outputv = 1
    73. Case 31 To 40
    74. Outputb = 160
    75. Outputp = 2
    76. Outputv = 1
    77. Case 41 To 50
    78. Outputb = 200
    79. Outputp = 2
    80. Outputv = 1
    81. Case 51 To 60
    82. Outputb = 280
    83. Outputp = 2
    84. Outputv = 1
    85. Case 61 To 70
    86. Outputb = 480
    87. Outputp = 2
    88. Outputv = 2
    89. Case Is > 70
    90. Outputp = 2
    91. Outputv = 3
    92. Outputb = 680
    93. End Select
    94. End If
    95. End Sub
    96. Private Sub Bt2_Click(sender As Object, e As EventArgs)
    97. Dim Outputp As Integer
    98. Dim Outputb As Integer
    99. Dim Outputv As Integer
    100. If vbsek.Checked = True Then
    101. Outputb += 200
    102. Outputp += 2
    103. Outputv += 1
    104. ElseIf CKges.Checked = True Then
    105. Outputb += 320
    106. Outputp += 2
    107. Outputv += 1
    108. ElseIf cksachs.Checked = True Then
    109. Outputb += 360
    110. Outputp += 2
    111. Outputv += 1
    112. ElseIf cbeinfach.Checked = True Then
    113. Outputb += 90
    114. Outputp += 1
    115. Outputv += 1
    116. ElseIf CBgefahre.Checked = True Then
    117. Outputb += 320
    118. Outputp += 2
    119. Outputv += 1
    120. ElseIf CKVere.Checked = True Then
    121. Outputb += 360
    122. Outputp += 2
    123. Outputv += 1
    124. ElseIf cbpfei.Checked = True Then
    125. Outputb += 90
    126. Outputp += 2
    127. Outputv += 1
    128. End If
    129. lblgeld.Text = Outputb.ToString
    130. lblpunkt.Text = Outputp.ToString
    131. lblverbot.Text = Outputv.ToString
    132. End Sub
    133. End Class

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

    @Genetic Willkommen im Forum. :thumbup:
    Aus

    VB.NET-Quellcode

    1. Private Sub Bt2_Click(sender As Object, e As EventArgs)
    machst Du

    VB.NET-Quellcode

    1. Private Sub Bt2_Click(sender As Object, e As EventArgs) Handles Bt2.Click
    Und dann noch dies zu Strict Off:
    Visual Studio - Empfohlene Einstellungen
    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!
    @Genetic
    ...und bei Rod's Verlinkung nicht nur das 1. Thema mit Strict OFF angehen, sondern auch die nächsten Punkte - wie VisualBasic-Namespace deaktivieren - weiter unten unbedingt durchlesen und anwenden!

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

    Und dann späßleshalber noch: Boolean-Vergleiche mit True sind überflüssig.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @Genetic
    Was mir noch aufgefallen ist - nie die Controls als Werthaltung lblgeld.Text += 90 im Code verwenden...
    Deklariere dazu eine eigene Variable mit richtigem Typ und verwende diese...
    Me.textin wird eine Textbox sein, in der nur Zahlen geführt wird --> nimm dazu besser ein NumericUpDown-Control. Da gibt es keine Wursteleien mit unrichtigen Eingaben...

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