Prosty kalkulator
Mam nadzieje, że po jedenastu działach poradnika, nie muszę już wam tłumaczyć każdej linii kodu. Zaczniemy więc posługiwać się komentarzami w kodzie, dzięki temu będziemy mogli opisywać co poszczególne bloki kodu wykonują. Zacznijmy więc budować nasz pierwszy kalkulator. Otwieramy sobie nową formę i umieszczamy na niej kontrolki wg poniższego wzoru lub wg uznania.
No i dobrze, mamy już gotową formę. Na mojej formie ustawiłem właściwość TextBox'a ReadOnly na wartość True.
Teraz żeby to działało tak jak powinno to trzeba napisać jakiś kod. Zabieramy się do pracy !
Public Class Form1
Private istniejeliczba1 As Boolean = False
Private istniejeliczba2 As Boolean = False
Private liczba1 As Decimal
Private liczba2 As Decimal
Private Opertr As String
Private Sub Btn1_Click(sender As Object, e As EventArgs) Handles Btn1.Click
TxbWynik.Text &= 1
End Sub
Private Sub Btn2_Click(sender As Object, e As EventArgs) Handles Btn2.Click
TxbWynik.Text &= 2
End Sub
Private Sub Btn3_Click(sender As Object, e As EventArgs) Handles Btn3.Click
TxbWynik.Text &= 3
End Sub
Private Sub Btn4_Click(sender As Object, e As EventArgs) Handles Btn4.Click
TxbWynik.Text &= 4
End Sub
Private Sub Btn5_Click(sender As Object, e As EventArgs) Handles Btn5.Click
TxbWynik.Text &= 5
End Sub
Private Sub Btn6_Click(sender As Object, e As EventArgs) Handles Btn6.Click
TxbWynik.Text &= 6
End Sub
Private Sub Btn7_Click(sender As Object, e As EventArgs) Handles Btn7.Click
TxbWynik.Text &= 7
End Sub
Private Sub Btn8_Click(sender As Object, e As EventArgs) Handles Btn8.Click
TxbWynik.Text &= 8
End Sub
Private Sub Btn9_Click(sender As Object, e As EventArgs) Handles Btn9.Click
TxbWynik.Text &= 9
End Sub
Private Sub Btn0_Click(sender As Object, e As EventArgs) Handles Btn0.Click
TxbWynik.Text &= 0
End Sub
Private Sub BtnPrzecinek_Click(sender As Object, e As EventArgs) Handles BtnPrzecinek.Click
If Not TxbWynik.Text.Contains(",") Then ' Jeśli textbox nie zawiera przecinka to wtedy
TxbWynik.Text &= ","
End If
End Sub
Private Sub BtnPlusMinus_Click(sender As Object, e As EventArgs) Handles BtnPlusMinus.Click
If Not TxbWynik.Text.Contains("-") Then
TxbWynik.Text = "-" & TxbWynik.Text
Else
If TxbWynik.Text.Contains("-") Then
TxbWynik.Text = TxbWynik.Text.Trim("-") ' Funkcja Trim usuwa znak lub ciag znaków jeśli znajdzie je w łańcuchu textboxa
End If
End If
End Sub
Private Sub BtnWynik_Click(sender As Object, e As EventArgs) Handles BtnWynik.Click
Try
If istniejeliczba1 = True Then
liczba2 = CDec(TxbWynik.Text)
istniejeliczba2 = True
End If
If Opertr = "+" Then
TxbWynik.Text = liczba1 + liczba2
End If
If Opertr = "-" Then
TxbWynik.Text = liczba1 - liczba2
End If
If Opertr = "*" Then
TxbWynik.Text = liczba1 * liczba2
End If
If Opertr = "/" Then
TxbWynik.Text = liczba1 / liczba2
End If
istniejeliczba1 = False
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub BtnDodaj_Click(sender As Object, e As EventArgs) Handles BtnDodaj.Click
Opertr = "+"
If istniejeliczba1 = False Then
liczba1 = CDec(TxbWynik.Text)
istniejeliczba1 = True
TxbWynik.Text = ""
End If
End Sub
Private Sub BtnOdejmij_Click(sender As Object, e As EventArgs) Handles BtnOdejmij.Click
Opertr = "-"
If istniejeliczba1 = False Then
liczba1 = CDec(TxbWynik.Text)
istniejeliczba1 = True
TxbWynik.Text = ""
End If
End Sub
Private Sub BtnDziel_Click(sender As Object, e As EventArgs) Handles BtnDziel.Click
Opertr = "/"
If istniejeliczba1 = False Then
liczba1 = CDec(TxbWynik.Text)
istniejeliczba1 = True
TxbWynik.Text = ""
End If
End Sub
Private Sub BtnMnozenie_Click(sender As Object, e As EventArgs) Handles BtnMnozenie.Click
Opertr = "*"
If istniejeliczba1 = False Then
liczba1 = CDec(TxbWynik.Text)
istniejeliczba1 = True
TxbWynik.Text = ""
End If
End Sub
Private Sub BtnProcent_Click(sender As Object, e As EventArgs)
If istniejeliczba1 = False Then
liczba1 = CDec(TxbWynik.Text)
istniejeliczba1 = True
liczba1 = liczba1
TxbWynik.Text = ""
End If
End Sub
Private Sub BtnClear_Click(sender As Object, e As EventArgs) Handles BtnClear.Click
TxbWynik.Text = ""
istniejeliczba1 = False
istniejeliczba2 = False
End Sub
End Class
Sprawdźcie to u siebie ! Jeśli będą jakieś pytania to zapraszam do pisania ich w komentarzach.
Utworzono 10.09.2015

Brak komentarzy:
Prześlij komentarz