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