I LOVE LOMBOK

I LOVE LOMBOK
buat happy ja

Monday, December 12, 2011

belajar vb 6.0

Membuat Kalkulator Sederhana Dengan VB 6.0


i
10 Votes
Quantcast
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 Explicit Private Hasil As Double Private Const opNol = 0 Private Const opTambah = 1 Private Const opKurang = 2 Private Const opKali = 3 Private Const opBagi = 4 Private Operator As Integer Private NilaiBaru As Boolean ‘ untuk menghapus karakter terakhir Private Sub Hapus() Dim txt As String Dim min_len As Integer txt = txtDisplay.Text If Left$(txt, 1) = “-” Then min_len = 2 Else min_len = 1 End If If Len(txt) > min_len Then txtDisplay.Text = Left$(txt, Len(txt) – 1) Else txtDisplay.Text = “0″ End If End Sub ‘ hapus angka, hasil terakhir dan operator Private Sub cmdClear_Click() cmdClearEntry_Click Hasil = 0 Operator = opNol End Sub ‘ hapus angka Private Sub cmdClearEntry_Click() txtDisplay.Text = “” End Sub ‘ menambahkan koma (desimal) Private Sub cmdKoma_Click() If InStr(txtDisplay.Text, “.”) Then Beep Else If NilaiBaru Then txtDisplay.Text = “.” NilaiBaru = False Else txtDisplay.Text = txtDisplay.Text & “.” End If End If End Sub ‘ Menghitung Private Sub cmdSamaDengan_Click() Dim HasilBaru As Double If txtDisplay.Text = “” Then HasilBaru = 0 Else HasilBaru = CDbl(txtDisplay.Text) End If Select Case Operator Case opNol Hasil = HasilBaru Case opTambah Hasil = Hasil + HasilBaru Case opKurang Hasil = Hasil – HasilBaru Case opKali Hasil = Hasil * HasilBaru Case opBagi ‘Tidak bisa dibagi nol If HasilBaru = 0 Then MsgBox “Tidak bisa dibagi 0″, vbOKOnly + vbCritical, “Kalku ERROR” Call cmdClear_Click Else Hasil = Hasil / HasilBaru End If End Select Operator = opNol NilaiBaru = True txtDisplay.Text = Format$(Hasil) End Sub ‘ menuliskan angka Private Sub cmdAngka_Click(Index As Integer) If NilaiBaru Then txtDisplay.Text = Format$(Index) NilaiBaru = False Else txtDisplay.Text = _ txtDisplay.Text & Format$(Index) End If End Sub ‘ tombol tambah/kurang/bagi/kali Private Sub cmdOperator_Click(Index As Integer) cmdSamaDengan_Click Operator = Index NilaiBaru = True End Sub ‘ merubah tanda +/- Private Sub cmdPlusMinus_Click() If NilaiBaru Then txtDisplay.Text = “-” ElseIf Left$(txtDisplay.Text, 1) = “-” Then txtDisplay.Text = Right$(txtDisplay.Text, 2) Else txtDisplay.Text = “-” & txtDisplay.Text End If End Sub ‘ filter untuk angka saja yg dapat diketikkan Private Sub Form_KeyPress(KeyAscii As Integer) txtDisplay_KeyPress KeyAscii End Sub Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer) txtDisplay_KeyUp KeyCode, Shift End Sub ‘ supaya kursor tetap di kanan Private Sub txtDisplay_Change() txtDisplay.SelStart = Len(txtDisplay.Text) End Sub Private Sub txtDisplay_GotFocus() txtDisplay_Change End Sub ‘ untuk mengetikkan angka di keyboard Private Sub txtDisplay_KeyPress(KeyAscii As Integer) Dim ch As String ch = Chr$(KeyAscii) Select Case ch Case “0″ cmdAngka_Click 0 Case “1″ cmdAngka_Click 1 Case “2″ cmdAngka_Click 2 Case “3″ cmdAngka_Click 3 Case “4″ cmdAngka_Click 4 Case “5″ cmdAngka_Click 5 Case “6″ cmdAngka_Click 6 Case “7″ cmdAngka_Click 7 Case “8″ cmdAngka_Click 8 Case “9″ cmdAngka_Click 9 Case “*”, “x”, “X” cmdOperator_Click opKali Case “+” cmdOperator_Click opTambah Case vbCrLf, vbCr, “=” cmdSamaDengan_Click Case “-” cmdOperator_Click opKurang Case “.” cmdKoma_Click Case “/” cmdOperator_Click opBagi Case “C”, “c” cmdClearEntry_Click End Select KeyAscii = 0 End Sub ‘ untuk ketikan angka di numpad Private Sub txtDisplay_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyNumpad0
cmdAngka_Click 0
Case vbKeyNumpad1
cmdAngka_Click 1
Case vbKeyNumpad2
cmdAngka_Click 2
Case vbKeyNumpad3
cmdAngka_Click 3
Case vbKeyNumpad4
cmdAngka_Click 4
Case vbKeyNumpad5
cmdAngka_Click 5
Case vbKeyNumpad6
cmdAngka_Click 6
Case vbKeyNumpad7
cmdAngka_Click 7
Case vbKeyNumpad8
cmdAngka_Click 8
Case vbKeyNumpad9
cmdAngka_Click 9
Case vbKeyMultiply
cmdOperator_Click opKali
Case vbKeyAdd
cmdOperator_Click opTambah
Case vbKeySeparator
cmdSamaDengan_Click
Case vbKeySubtract
cmdOperator_Click opKurang
Case vbKeyDivide
cmdOperator_Click opBagi
Case vbKeyDecimal
cmdKoma_Click
Case vbKeyBack, vbKeyDelete
Hapus
End Select
KeyCode = 0
End Sub

No comments:

Post a Comment