Program Kodları Vb.Net (Hesap Makinesi)

Program Kodları

Bugün farklı bir uygulamaya imza atıyor ve program kodları paylaşıyoruz. Hep birlikte görsel programlama yapacağız. Programlama dili olarak “Visual Basic”i seçtik. Gelin hep birlikte Windows’taki meşhur hesap makinesinin benzerinin nasıl yapıldığını inceleyelim.

Visual Studio’yu açıyorsunuz, yeni projenizi oluşturup tasarım ekranını açıyorsunuz. Kodlamaya geçmeden önce tasarıma şunları ekliyorsunuz:

  • 1 Tane Textbox (İşlem sonucunu görebilmemiz için)
  • 1 Tane MenuStrip (Kopyala yapıştır özellikleri için)
  • 1 Tane Label
  • 27 Tane Buton (İşlemler için tuşlar)
Program Kodları
Program Kodları – Hesap Makinesi

Tasarıma yerleştirdiğiniz bu objeleri güzelce göze batmayacak şekilde yerleştiriyoruz. Bu arada atlamadan, üstteki menüye (menustrip) bir kopyalama bir de yapıştırma tuşu ekliyoruz. Ardından “program kodları“nı yerleştirmek üzere kodlama bölümünü açıyoruz.

Zaten programlamadan anlayan birisi kodların içerisinde hangi butonun hangisi için olduğunu anlayacaktır.

Bu arada kodlarda en başta yaptığımız şey (“Dim”li kısımlar) değişken tanımlamadır. O tanımladığımız değişkenler (sayılar) sayesinde çeşitli işlemleri yaptırabilme imkanı bulacağız. Hazırsanız hep birlikte “program kodları“nı inceleyelim:

Dim a, b, hafıza As Decimal
Dim işlem As Char
Dim durum, durum2, sayı As Boolean
 
Private Sub C_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles C.Click
a = 0
b = 0
TextBox1.Text = 0
End Sub</span></div>
<span style="color: #000000;">Private Sub sifir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles sifir.Click, Button4.Click, Button5.Click, Button6.Click, Button7.Click, Button8.Click, Button9.Click, Button10.Click, Button11.Click, Button12.Click
If durum = True Then
a = CDec(TextBox1.Text)
TextBox1.Text = sender.text
durum = False
durum2 = True
Else
TextBox1.Text = TextBox1.Text + sender.text
 
End If
sayı = True
End Sub
 
Private Sub bol_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bol.Click
If durum2 = True Then
b = CDec(TextBox1.Text)
 
End If
 
If işlem = "+" Then TextBox1.Text = a + b
If işlem = "-" Then TextBox1.Text = a - b
If işlem = "*" Then TextBox1.Text = a * b
If işlem = "/" Then TextBox1.Text = a / b
 
işlem = "/"
durum = True
 
End Sub
 
Private Sub carp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles carp.Click
If durum2 = True Then
b = CDec(TextBox1.Text)
 
End If
 
If işlem = "+" Then TextBox1.Text = a + b
If işlem = "-" Then TextBox1.Text = a - b
If işlem = "*" Then TextBox1.Text = a * b
If işlem = "/" Then TextBox1.Text = a / b
 
işlem = "*"
durum = True
End Sub
 
Private Sub cikar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cikar.Click
If durum2 = True Then
b = CDec(TextBox1.Text)
 
End If
 
If işlem = "+" Then TextBox1.Text = a + b
If işlem = "-" Then TextBox1.Text = a - b
If işlem = "*" Then TextBox1.Text = a * b
If işlem = "/" Then TextBox1.Text = a / b
 
işlem = "-"
durum = True
End Sub
 
Private Sub topla_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles topla.Click
If durum2 = True Then
b = CDec(TextBox1.Text)
 
End If
 
If işlem = "+" Then TextBox1.Text = a + b
If işlem = "-" Then TextBox1.Text = a - b
If işlem = "*" Then TextBox1.Text = a * b
If işlem = "/" Then TextBox1.Text = a / b
 
işlem = "+"
durum = True
End Sub
 
Private Sub esittir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles esittir.Click
If durum2 = True Then
 
b = CDec(TextBox1.Text)
 
If işlem = "+" Then TextBox1.Text = a + b
If işlem = "-" Then TextBox1.Text = a - b
If işlem = "*" Then TextBox1.Text = a * b
If işlem = "/" Then TextBox1.Text = a / b
End If
durum2 = False
işlem = ""
End Sub
 
Private Sub Geri_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Geri.Click
On Error Resume Next
TextBox1.Text = TextBox1.Text.Remove(TextBox1.Text.Length - 1)
End Sub
 
Private Sub CE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CE.Click
TextBox1.Text = 0
End Sub
 
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
If sayı = True Then
TextBox1.Text = CDec(TextBox1.Text)
 
End If
End Sub
 
Private Sub Kok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Kok.Click
TextBox1.Text = Math.Sqrt(TextBox1.Text)
End Sub
 
Private Sub Yuzde_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Yuzde.Click
If durum2 = True Then
b = CDec(TextBox1.Text)
TextBox1.Text = a * b / 100
 
End If
End Sub
 
Private Sub virgul_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles virgul.Click
sayı = False
If TextBox1.Text.IndexOf(",") = -1 Then
TextBox1.Text = TextBox1.Text + ","
Else
Exit Sub
End If
End Sub
 
Private Sub MC_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MC.Click
hafıza = "0"
Label1.Text = " "
End Sub
 
Private Sub MR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MR.Click
TextBox1.Text = hafıza
End Sub
 
Private Sub MS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MS.Click
hafıza = TextBox1.Text
Label1.Text = "M"
End Sub
 
Private Sub martı_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles martı.Click
TextBox1.Text = Val(TextBox1.Text) + hafıza
End Sub
 
Private Sub Button26_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button26.Click
TextBox1.Text = 1 / TextBox1.Text
End Sub
 
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text = -1 * TextBox1.Text
End Sub
 
Private Sub KopyalaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles KopyalaToolStripMenuItem.Click
Clipboard.SetText(TextBox1.Text)
End Sub
 
Private Sub YapıştırToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles YapıştırToolStripMenuItem.Click
TextBox1.Text = Clipboard.GetText
End Sub

Sanırsam bu dahi yeterli olmuştur. Bu arada hangi butonun hangi koda tekabül ettiğini çözmek de size kalmış 🙂 Yalnız takıldığınız bir şey olursa yorumlarda sorabilirsiniz, size de kolay gelsin.

Not: Bu içeriğimiz eğitim amaçlı olduğu için bu hesap makinesinin kodları alıntıdır fakat sitede yazılım projeleri başlığı altında yaptığımız şeyler “KESİNLİKLE” bize aittir.

Ana Sayfaya Dönmek İçin: https://www.technogezgin.com/

Bir cevap yazın