Kalkulator Sederhana Dengan Visual Basic 6.0


     Setelah belajar penjumlahan dengan Visual Basic 6.0 sekarang kita coba aplikasikan dengan membuat program kalkulator sederhana, kenapa yang sederhana ? ya biar mudah di pahami dan g ribet juga buatnya.

      Pertama buka dulu Visual Basic 6.0 nya seperti biasa, pilih yang Standard Exe. Lalu siapkan Object seperti berikut ya :
  • 1 buah TextBox
  • 1 buah PictureBox (Hiasan saja biar keren.)
  • 17 buah CommandButton.
Kaya resep maskan aja ya. Ya secara logika g beda jauh sih.

      Klo sudah buat disainnya seperti ini ya. sama jangan lupa ganti Caption commandbuttonnya juga ya.
Rubah captionnya di Properti Window bisa juga ganti Font yang ingin kita pakai.

Klo sudah ganti nama object nya ya, sesuai daftar berikut :
  • Text1 = "Txt_Display"
  • 0 = "Cmd_Num0"
  • 1 = "Cmd_Num1"
  • 2 = "Cmd_Num2"
  • 3 = "Cmd_Num3"
  • 4 = "Cmd_Num4"
  • 5 = "Cmd_Num5"
  • 6 = "Cmd_Num6"
  • 7 = "Cmd_Num7"
  • 8 = "Cmd_Num8"
  • 9 = "Cmd_Num9"
  • / = "Cmd_Bagi"
  • * = "Cmd_Kali"
  • - = "Cmd_Kurang"
  • + = "Cmd_Tambah"
  • C = "Cmd_Clear"
  • > = "Cmd_Hapus"
  • (=) = "Cmd_Hasil"
Setelah setting propertie nya sesuai dengan yang di atas, langsung masukin Code berikut.

Option Explicit
Dim dNilai1 As Double
Dim dNilai2 As Boolean
Dim sFunction As String

Private Sub Cmd_Bagi_Click()
    Txt_Display_KeyPress (Asc("/"))
End Sub

Private Sub Cmd_Clear_Click()
    Txt_Display_KeyPress (27)
End Sub

Private Sub Cmd_Hapus_Click()
    Txt_Display_KeyPress (8)
End Sub

Private Sub Cmd_Hasil_Click()
    Txt_Display_KeyPress (13)
End Sub

Private Sub Cmd_Kali_Click()
    Txt_Display_KeyPress (Asc("*"))
End Sub

Private Sub Cmd_Kurang_Click()
    Txt_Display_KeyPress (Asc("-"))
End Sub

Private Sub Cmd_Num0_Click()
    Txt_Display_KeyPress (Asc("0"))
End Sub

Private Sub Cmd_Num1_Click()
    Txt_Display_KeyPress (Asc("1"))
End Sub

Private Sub Cmd_Num2_Click()
    Txt_Display_KeyPress (Asc("2"))
End Sub

Private Sub Cmd_Num3_Click()
    Txt_Display_KeyPress (Asc("3"))
End Sub

Private Sub Cmd_Num4_Click()
    Txt_Display_KeyPress (Asc("4"))
End Sub

Private Sub Cmd_Num5_Click()
    Txt_Display_KeyPress (Asc("5"))
End Sub

Private Sub Cmd_Num6_Click()
    Txt_Display_KeyPress (Asc("6"))
End Sub

Private Sub Cmd_Num7_Click()
    Txt_Display_KeyPress (Asc("7"))
End Sub

Private Sub Cmd_Num8_Click()
    Txt_Display_KeyPress (Asc("8"))
End Sub

Private Sub Cmd_Num9_Click()
    Txt_Display_KeyPress (Asc("9"))
End Sub

Private Sub Cmd_Tambah_Click()
    Txt_Display_KeyPress (Asc("+"))
End Sub

Private Sub Form_Activate()
    Txt_Display.SetFocus
End Sub

Private Sub Form_Load()
    dNilai1 = 0
    dNilai2 = False
    sFunction = ""
    
    Txt_Display.Text = 0
    Txt_Display.Alignment = vbRightJustify
    Me.Caption = "Kalkulator Sederhana"
End Sub

Private Sub Txt_Display_GotFocus()
    Txt_Display.SelStart = Len(Txt_Display.Text)
End Sub

Private Sub Txt_Display_KeyPress(KeyAscii As Integer)
    If KeyAscii > 28 Then
        If InStr("0123456789.", Chr(KeyAscii)) <> 0 Then
            Call InsertNum(Chr(KeyAscii))
        ElseIf InStr("-+/*=", Chr(KeyAscii)) <> 0 Then
            Call InsertCommand(Chr(KeyAscii))
        End If
    ElseIf KeyAscii = 8 Then
        Call DeleteNum
    ElseIf KeyAscii = 13 Then
        Call InsertCommand("=")
    ElseIf KeyAscii = 27 Then
        Call ClearAll
    End If
    Txt_Display.SelStart = Len(Txt_Display.Text)
    KeyAscii = 0
    Txt_Display.SetFocus
End Sub

Private Sub InsertNum(sNum As String)
    If sNum <> "." Then
        If Txt_Display.Text = "0" Or dNilai2 = True Or sFunction = "=" Then
            Txt_Display.Text = sNum
            dNilai2 = False
            If sFunction = "=" Then
                sFunction = ""
            End If
        Else
            Txt_Display.Text = Txt_Display.Text & sNum
        End If
    Else
        If CeckKoma = False Then
            Txt_Display.Text = Txt_Display.Text & sNum
        End If
    End If
End Sub

Private Sub DeleteNum()
    Txt_Display.Text = Left(Txt_Display.Text, Len(Txt_Display.Text) - 1)
    If Trim(Txt_Display.Text) = "" Then
        Txt_Display.Text = 0
    End If
End Sub

Private Function CeckKoma() As Boolean
    Dim iX As Integer
    CeckKoma = False
    For iX = 1 To Len(Txt_Display.Text)
        If Mid(Txt_Display.Text, iX, 1) = "." Then
            CeckKoma = True
        End If
    Next iX
End Function

Private Sub InsertCommand(sCommand As String)
    If sFunction = "" Then
        If sCommand <> "=" Then
            dNilai1 = Val(Txt_Display.Text)
            sFunction = sCommand
            dNilai2 = True
        End If
    Else
        If dNilai2 = False Then
            Select Case sFunction
                Case Is = "+"
                    Txt_Display.Text = Val(dNilai1) + Val(Txt_Display.Text)
                Case Is = "-"
                    Txt_Display.Text = Val(dNilai1) - Val(Txt_Display.Text)
                Case Is = "*"
                    Txt_Display.Text = Val(dNilai1) * Val(Txt_Display.Text)
                Case Is = "/"
                    If Val(dNilai1) = 0 Then
                        Txt_Display.Text = 0
                    Else
                        Txt_Display.Text = Val(dNilai1) / Val(Txt_Display.Text)
                    End If
            End Select
            If sCommand = "=" Then
                dNilai1 = 0
                sFunction = "="
                dNilai2 = False
            Else
                dNilai1 = Val(Txt_Display.Text)
                sFunction = sCommand
                dNilai2 = True
            End If
        Else
            sFunction = sCommand
        End If
    End If
End Sub

Private Sub ClearAll()
    dNilai1 = 0
    sFunction = ""
    dNilai2 = False
    Txt_Display = 0
End Sub

finally program kalkulator sederhana siap di coba.
Kalkulator Sederhana Dengan Visual Basic 6.0 Kalkulator Sederhana Dengan Visual Basic 6.0 Reviewed by Jafar pahrudin on 20:20 Rating: 5

2 comments:

  1. ahh thank bro, gua jadi ngerti cara gunain vb.. walau masih pemula :v

    kunjungin juga blog saya Ini Macan

    ReplyDelete
    Replies
    1. sama" bro, moga manfaat ya.
      sip bro nanti gua liat macannya hahaha

      Delete

Theme images by hdoddema. Powered by Blogger.