Simpler Taschenrechner

    • VB.NET

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

      Simpler Taschenrechner

      16 Buttons und eine TextBox werden benötigt

      Quelle: Hat jemand vor 1 Jahr für mich gecodet, weiß nicht mehr wer :huh:

      VB.NET-Quellcode

      1. Public Class Form1
      2. Dim rechenzeichen As Char
      3. Dim ersterOperand As Integer
      4. Dim zweiterOperand As Integer
      5. Dim indexOfRechenzeichen As Integer
      6. Dim ergebnis As Integer
      7. Private Sub zero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles zero.Click
      8. If Me.TextBox.Text.Length > 0 Then
      9. Me.TextBox.AppendText("0")
      10. Else
      11. Me.TextBox.Text = "0"
      12. End If
      13. End Sub
      14. Private Sub one_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles one.Click
      15. If Me.TextBox.Text.Length > 0 Then
      16. Me.TextBox.AppendText("1")
      17. Else
      18. Me.TextBox.Text = "1"
      19. End If
      20. End Sub
      21. Private Sub two_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles two.Click
      22. If Me.TextBox.Text.Length > 0 Then
      23. Me.TextBox.AppendText("2")
      24. Else
      25. Me.TextBox.Text = "2"
      26. End If
      27. End Sub
      28. Private Sub three_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles three.Click
      29. If Me.TextBox.Text.Length > 0 Then
      30. Me.TextBox.AppendText("3")
      31. Else
      32. Me.TextBox.Text = "3"
      33. End If
      34. End Sub
      35. Private Sub four_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles four.Click
      36. If Me.TextBox.Text.Length > 0 Then
      37. Me.TextBox.AppendText("4")
      38. Else
      39. Me.TextBox.Text = "4"
      40. End If
      41. End Sub
      42. Private Sub five_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles five.Click
      43. If Me.TextBox.Text.Length > 0 Then
      44. Me.TextBox.AppendText("5")
      45. Else
      46. Me.TextBox.Text = "5"
      47. End If
      48. End Sub
      49. Private Sub six_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles six.Click
      50. If Me.TextBox.Text.Length > 0 Then
      51. Me.TextBox.AppendText("6")
      52. Else
      53. Me.TextBox.Text = "6"
      54. End If
      55. End Sub
      56. Private Sub seven_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles seven.Click
      57. If Me.TextBox.Text.Length > 0 Then
      58. Me.TextBox.AppendText("7")
      59. Else
      60. Me.TextBox.Text = "7"
      61. End If
      62. End Sub
      63. Private Sub eight_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles eight.Click
      64. If Me.TextBox.Text.Length > 0 Then
      65. Me.TextBox.AppendText("8")
      66. Else
      67. Me.TextBox.Text = "8"
      68. End If
      69. End Sub
      70. Private Sub nine_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles nine.Click
      71. If Me.TextBox.Text.Length > 0 Then
      72. Me.TextBox.AppendText("9")
      73. Else
      74. Me.TextBox.Text = "9"
      75. End If
      76. End Sub
      77. Private Sub point_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles point.Click
      78. TextBox.Paste(".")
      79. End Sub
      80. Private Sub mal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mal.Click
      81. rechenzeichen = "*"c
      82. ersterOperand = Integer.Parse(Me.TextBox.Text)
      83. Me.TextBox.AppendText("*")
      84. End Sub
      85. Private Sub geteilt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles geteilt.Click
      86. rechenzeichen = "/"c
      87. ersterOperand = Integer.Parse(Me.TextBox.Text)
      88. Me.TextBox.AppendText("/")
      89. End Sub
      90. Private Sub minus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles minus.Click
      91. rechenzeichen = "-"c
      92. ersterOperand = Integer.Parse(Me.TextBox.Text)
      93. Me.TextBox.AppendText("-")
      94. End Sub
      95. Private Sub plus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles plus.Click
      96. rechenzeichen = "+"c
      97. ersterOperand = Integer.Parse(Me.TextBox.Text)
      98. Me.TextBox.AppendText("+")
      99. End Sub
      100. Private Sub gleich_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles gleich.Click
      101. indexOfRechenzeichen = Me.TextBox.Text.IndexOf(rechenzeichen)
      102. Me.ersterOperand = Integer.Parse(Me.TextBox.Text.Substring(0, indexOfRechenzeichen))
      103. Me.zweiterOperand = Integer.Parse(Me.TextBox.Text.Substring(indexOfRechenzeichen + 1))
      104. Me.TextBox.Clear()
      105. Select Case rechenzeichen
      106. Case "+"c
      107. ergebnis = ersterOperand + zweiterOperand
      108. Me.TextBox.Text = ergebnis.ToString()
      109. Exit Select
      110. Case "-"c
      111. ergebnis = ersterOperand - zweiterOperand
      112. Me.TextBox.Text = ergebnis.ToString()
      113. Exit Select
      114. Case "*"c
      115. ergebnis = ersterOperand * zweiterOperand
      116. Me.TextBox.Text = ergebnis.ToString()
      117. Exit Select
      118. Case "/"c
      119. ergebnis = ersterOperand / zweiterOperand
      120. Me.TextBox.Text = ergebnis.ToString()
      121. Exit Select
      122. End Select
      123. End Sub
      124. End Class
      Hallo Entenmann
      Habe gerade Deinen Code getestet. Funktioniert so weit, aber da Du alles auf Integer aufgebaut hast, natürlich nur für Ganze Zahlen.

      Jetzt frage ich mich natürlich, wofür die Schaltfläche POINT mit dem Punkt drauf gut ist?

      mfg, Adi

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