Program kalkulator adalah program standar yang sudah tersedia di
Microsoft Windows. Tetapi, tak ada salahnya jika kita mencoba membuat
kalkulator sendiri dengan Microsoft Visual Basic 6.0.
Pertama-tama, buatlah sebuah form sesuai selera Anda, yang bentuknya kurang lebih seperti
kalkulator standar Windows, seperti ini:
Untuk properties dari masing-masing objek, saya contohkan seperti dibawah ini, dengan letak
masing-masing objek disesuaikan dengan gambar diatas.
Textbox 1:
(Name) : txtDisplay
Alignment: 1-Right Justify
Text : (kosongkan)
Maxlength : 12
Command Button 1:
(Name) : cmdAngka
Index : 1
Caption : 1
Command Button 2:
(Name) : cmdAngka
Index : 2
Caption : 2
Command Button 3:
(Name) : cmdAngka
Index : 3
Caption : 3
Command Button 4:
(Name) : cmdAngka
Index : 4
Caption : 4
Command Button 5:
(Name) : cmdAngka
Index : 5
Caption : 5
Command Button 6:
(Name) : cmdAngka
Index : 6
Caption : 6
Command Button 7:
(Name) : cmdAngka
Index : 7
Caption : 7
Command Button 8:
(Name) : cmdAngka
Index : 8
Caption : 8
Command Button 9:
(Name) : cmdAngka
Index : 9
Caption : 9
Command Button 10:
(Name) : cmdAngka
Index : 0
Caption : 0
Command Button 11:
(Name) : cmdPlusMinus
Caption : +/-
Command Button 12:
(Name) : cmdKoma
Caption : .
Command Button 13:
(Name) : cmdOperator
Index : 1
Caption : +
Command Button 14:
(Name) : cmdOperator
Index : 2
Caption : -
Command Button 15:
(Name) : cmdOperator
Index : 3
Caption : x
Command Button 16:
(Name) : cmdOperator
Index : 4
Caption : /
Command Button 17:
(Name) : cmdClearEntry
Caption : CE
Command Button 18:
(Name) : cmdClear
Caption : C
Command Button 19:
(Name) : cmdSamaDengan
Caption : =
Berikutnya, Anda tinggal membuat coding dari kalkulator tersebut. Jika Anda mengikuti semua
setting properties seperti diatas, maka codingnya saya contohkan seperti ini:
Option ExplicitPrivate Hasil As DoublePrivate Const opNol = 0Private Const opTambah = 1Private Const opKurang = 2Private Const opKali = 3Private Const opBagi = 4Private Operator As IntegerPrivate NilaiBaru As Boolean' untuk menghapus karakter terakhirPrivate Sub Hapus()Dim txt As StringDim min_len As Integertxt = txtDisplay.TextIf Left$(txt, 1) = "-" Thenmin_len = 2Elsemin_len = 1End IfIf Len(txt) > min_len ThentxtDisplay.Text = Left$(txt, Len(txt) - 1)ElsetxtDisplay.Text = "0"End IfEnd Sub' hapus angka, hasil terakhir dan operatorPrivate Sub cmdClear_Click()cmdClearEntry_ClickHasil = 0Operator = opNolEnd Sub' hapus angkaPrivate Sub cmdClearEntry_Click()txtDisplay.Text = ""End Sub' menambahkan koma (desimal)Private Sub cmdKoma_Click()If InStr(txtDisplay.Text, ".") ThenBeepElseIf NilaiBaru ThentxtDisplay.Text = "."NilaiBaru = FalseElsetxtDisplay.Text = txtDisplay.Text & "."End IfEnd IfEnd Sub' MenghitungPrivate Sub cmdSamaDengan_Click()Dim HasilBaru As DoubleIf txtDisplay.Text = "" ThenHasilBaru = 0ElseHasilBaru = CDbl(txtDisplay.Text)End IfSelect Case OperatorCase opNolHasil = HasilBaruCase opTambahHasil = Hasil + HasilBaruCase opKurangHasil = Hasil - HasilBaruCase opKaliHasil = Hasil * HasilBaruCase opBagi'Tidak bisa dibagi nolIf HasilBaru = 0 ThenMsgBox "Tidak bisa dibagi 0", vbOKOnly + vbCritical, "Kalku ERROR"Call cmdClear_ClickElseHasil = Hasil / HasilBaruEnd IfEnd SelectOperator = opNolNilaiBaru = TruetxtDisplay.Text = Format$(Hasil)End Sub' menuliskan angkaPrivate Sub cmdAngka_Click(Index As Integer)If NilaiBaru ThentxtDisplay.Text = Format$(Index)NilaiBaru = FalseElsetxtDisplay.Text = _txtDisplay.Text & Format$(Index)End IfEnd Sub' tombol tambah/kurang/bagi/kaliPrivate Sub cmdOperator_Click(Index As Integer)cmdSamaDengan_ClickOperator = IndexNilaiBaru = TrueEnd Sub' merubah tanda +/-Private Sub cmdPlusMinus_Click()If NilaiBaru ThentxtDisplay.Text = "-"ElseIf Left$(txtDisplay.Text, 1) = "-" ThentxtDisplay.Text = Right$(txtDisplay.Text, 2)ElsetxtDisplay.Text = "-" & txtDisplay.TextEnd IfEnd Sub' filter untuk angka saja yg dapat diketikkanPrivate Sub Form_KeyPress(KeyAscii As Integer)txtDisplay_KeyPress KeyAsciiEnd SubPrivate Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)txtDisplay_KeyUp KeyCode, ShiftEnd Sub' supaya kursor tetap di kananPrivate Sub txtDisplay_Change()txtDisplay.SelStart = Len(txtDisplay.Text)End SubPrivate Sub txtDisplay_GotFocus()txtDisplay_ChangeEnd Sub' untuk mengetikkan angka di keyboardPrivate Sub txtDisplay_KeyPress(KeyAscii As Integer)Dim ch As Stringch = Chr$(KeyAscii)Select Case chCase "0"cmdAngka_Click 0Case "1"cmdAngka_Click 1Case "2"cmdAngka_Click 2Case "3"cmdAngka_Click 3Case "4"cmdAngka_Click 4Case "5"cmdAngka_Click 5Case "6"cmdAngka_Click 6Case "7"cmdAngka_Click 7Case "8"cmdAngka_Click 8Case "9"cmdAngka_Click 9Case "*", "x", "X"cmdOperator_Click opKaliCase "+"cmdOperator_Click opTambahCase vbCrLf, vbCr, "="cmdSamaDengan_ClickCase "-"cmdOperator_Click opKurangCase "."cmdKoma_ClickCase "/"cmdOperator_Click opBagiCase "C", "c"cmdClearEntry_ClickEnd SelectKeyAscii = 0End Sub' untuk ketikan angka di numpadPrivate Sub txtDisplay_KeyUp(KeyCode As Integer, Shift As Integer)Select Case KeyCodeCase vbKeyNumpad0cmdAngka_Click 0Case vbKeyNumpad1cmdAngka_Click 1Case vbKeyNumpad2cmdAngka_Click 2Case vbKeyNumpad3cmdAngka_Click 3Case vbKeyNumpad4cmdAngka_Click 4Case vbKeyNumpad5cmdAngka_Click 5Case vbKeyNumpad6cmdAngka_Click 6Case vbKeyNumpad7cmdAngka_Click 7Case vbKeyNumpad8cmdAngka_Click 8Case vbKeyNumpad9cmdAngka_Click 9Case vbKeyMultiplycmdOperator_Click opKaliCase vbKeyAddcmdOperator_Click opTambahCase vbKeySeparatorcmdSamaDengan_ClickCase vbKeySubtractcmdOperator_Click opKurangCase vbKeyDividecmdOperator_Click opBagiCase vbKeyDecimalcmdKoma_ClickCase vbKeyBack, vbKeyDeleteHapusEnd SelectKeyCode = 0End Sub
Title :
Cara Mebuat Kalkulator sederhana di Visual Basic
Description : Program kalkulator adalah program standar yang sudah tersedia di Microsoft Windows. Tetapi, tak ada salahnya jika kita mencoba membuat kal...
Rating :
5