Rabu, 23 Februari 2011

Membuat Kalkulator Dengan Visual Basic 6.0

Ini dia nih salah satu tugas yang membuat saya sempat tidak bisa tidur, makan tak enak dan males mandi (emang males). Kerjanya cuma duduk di depan komputer, tes.. tes.. tes.. practice.. practice.. practice... (gaya banget).

Seringnya kesalahan yang terjadi saat pembuatan program sederhana ini adalah kurangnya ketelitian terhadap "Name", "Caption" dan "Text". Banyaknya program yang ada di internet biasanya memakai istilah-istilah yang tidak diterangkan secara detail, nah inilah yang kemudian banyak orang (termasuk saya) yang membuat program kalkulator gagal, tidak berjalan sesuai yang diharapkan.

Program yang bagus adalah yang yang banyak komentar, kata dosen saya nih, supaya orang yang "rabun" sama coding bisa ikut mencoba saya menambahkan sedikit penjelasan agar mudah dipahami. Ok, mari kita mulai!

Buat rancangan gambarnya seperti ini:



Perhatian! Untuk kalkulator sederhana, Anda tidak perlu menggunakan Command "+/-".

1. Masukkan 1 buah text (label)
2. Masukkan 18 buah command; 11 diantaranya beri nama "CommandAngka" (untuk angka 0 sampai 9, dan1 "CommandKoma", bisa juga beri nama sesuai keinginan), 4 "CommandOperator" (untuk "+", "-", "/" dan "*"), 1 "CommandHitung", 1 "CommandCE" (ClearEntry digunakan untuk menghapus 1 angka paling belakang) dan 1 "CommandHapus".


Masukkan kodenya seperti ini:

//Coding General:
Dim angka(1 To 2) As Single
Dim operator As String
Private Sub CommandAngka_Click(Index As Integer)
Text1.Text = Text1.Text & CommandAngka(Index).Caption
End Sub


//Coding ClearEntry:
Private Sub CommandCE_Click(Index As Integer)
Dim txt As String
Dim min_len As Integer
txt = Text1.Text
If Left$(txt, 1) = "-" Then
min_len = 2
Else
min_len = 1
End If
If Len(txt) > min_len Then
Text1.Text = Left$(txt, Len(txt) - 1)
Else
Text1.Text = "0"
End If

End Sub


//Coding Hapus (Clear):
Private Sub CommandHapus_Click()
Text1.Text = ""
End Sub


//Coding Hitung (sama dengan):
Private Sub CommandHitung_Click()
Dim hasil As Single

If Text1.Text = "" Then Exit Sub

angka(2) = CSng(Text1.Text)

Select Case operator
Case "+"
hasil = angka(1) + angka(2)
Case "-"
hasil = angka(1) - angka(2)
Case "*"
hasil = angka(1) * angka(2)
Case "/"
hasil = angka(1) / angka(2)
End Select

Text1.Text = hasil
End Sub


//Coding Operator:
Private Sub CommandOperator_Click(Index As Integer)
If Text1.Text = "" Then Exit Sub

angka(1) = CSng(Text1.Text)
operator = CommandOperator(Index).Caption
Text1.Text = ""
End Sub


NB: Hati-hati dengan Text, sering kali kita tidak teliti dengan ini, coding yang ada biasanya ditulis dengan "txtDisplay". Selamat mencoba!

5 komentar:

  1. Terimakasih tuk sharing ilmunya gan

    BalasHapus
    Balasan
    1. sama2. terima kasih sudah meninggalkan jejak ^^

      Hapus
  2. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  3. Balasan
    1. emg harus pake dim. udh rumusnya kek gitu seinget saya skrg dah lupa hahahah

      Hapus