Membuat Kalkulator Sederhana Menggunakan Visual Basic 6

download Membuat Kalkulator Sederhana Menggunakan Visual Basic 6

of 7

description

VB dasar

Transcript of Membuat Kalkulator Sederhana Menggunakan Visual Basic 6

Membuat Kalkulator Sederhana Menggunakan Visual Basic 6.0

Sebelum menjadi programer yang handal, Anda tentu harus belajar membuat program-program sederhana sebelum Anda membuat program yang sangat di butuhkan dalam zaman yang canggih ini. Salah satunya yaitu program kalkulator.Program kalkulator adalah program standar yang sudah tersedia di Microsoft Windows.Tetapi, tak ada salahnya jika kita mencoba membuat kalkulator sendiri dengan VisualBasic 6.0.

Baiklah, saya akan memberi tutorial mengenai pembuatan program kalkulator menggunakan Visual Basic 6.0.

Pertama-tama, buatlah sebuah form sesuai selera Anda, yang bentuknya kurang lebih seperti kalkulator standar Windows, seperti gambar di atas:

Untuk properties dari masing-masing objek, saya contohkan seperti dibawah ini, dengan letakmasing-masing objek disesuaikan dengan gambar diatas.Textbox 1:(Name) : txtDisplayAlignment: 1-Right JustifyText : (kosongkan)Maxlength : 12

Command Button 1:(Name) : cmdAngkaIndex : 1Caption : 1

Command Button 2:(Name) : cmdAngkaIndex : 2Caption : 2

Command Button 3:(Name) : cmdAngkaIndex : 3Caption : 3

Command Button 4:(Name) : cmdAngkaIndex : 4Caption : 4

Command Button 5:(Name) : cmdAngkaIndex : 5Caption : 5

Command Button 6:(Name) : cmdAngkaIndex : 6Caption : 6

Command Button 7:(Name) : cmdAngkaIndex : 7Caption : 7

Command Button 8:(Name) : cmdAngkaIndex : 8Caption : 8

Command Button 9:(Name) : cmdAngkaIndex : 9Caption : 9

Command Button 10:(Name) : cmdAngkaIndex : 0Caption : 0

Command Button 11:(Name) : cmdPlusMinusCaption : +/-

Command Button 12:(Name) : cmdKomaCaption : .

Command Button 13:(Name) : cmdOperatorIndex : 1Caption : +

Command Button 14:(Name) : cmdOperatorIndex : 2Caption : -

Command Button 15:(Name) : cmdOperatorIndex : 3Caption : x

Command Button 16:(Name) : cmdOperatorIndex : 4Caption : /

Command Button 17:(Name) : cmdClearEntryCaption : CE

Command Button 18:(Name) : cmdClearCaption : C

Command Button 19:(Name) : cmdSamaDenganCaption : =

Berikutnya, Anda tinggal membuat coding dari kalkulator tersebut. Jika Anda mengikuti semuasetting 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