Penggunaan Kontrol Array Pada Kalkulator Sederhana

Pembahasan kali ini kita akan mencoba menggunakan array pada kontrol VB untuk membuat kalkulator sederhana yang terdiri dari tombol angka, tombol operator dan beberapa tombol tambahan lainnya seperti tombol memori, tombol desimal, tombol sama dengan dan lain sebagainya. Untuk membuat desain antarmuka, kita memerlukan 25 tombol, dan satu label yang berfungsi sebagai tampilan layar panel. Nama dari layar panel kita beri nama sebagai panel. 

Berikut ini adalah gambar desain form untuk program kalkulator sederhana yang akan kita buat:




Tombol angka dari 1 hingga 9 dikelompokkan secara bersama sebagai array kontrol dan diberi nama sebagai btnAngka, sementara untuk angka 0 merupakan perintah tersendiri dan diberi nama sebagai btnZero. Cara yang paling sederhana untuk membuat array kontrol adalah dengan memasukkan perintah klik kanan pada tombol tersebut untuk menyalinnya lalu klik tempel (copy – paste), sehingga anda akan mendapatkan informasi peringatan berupa dialog pop up seperti yang ditunjukkan pada gambar di bawah ini:




Klik yes maka tombol baru akan segera muncul. Ulangi semua proses sebanyak sembilan kali dan anda akan mendapatkan sembilan tombol dalam bentuk array dengan semua tombol baru akan memiliki nama yang sama namun nomor indeks yang berbeda. Array kontrol dalam bentuk button tersebut kita beri nama sebagai btnAngka karena setiap angka akan dibedakan berdasarkan indeksnya masing-masing maka ke sembilan nama tombol tersebut adalah btnAngka(1), btnAngka(2), btnAngka(3) ............, btnAngka(9). Keempat tombol operator dasar juga dikelompokkan secara bersama sebagai kontrol array dan diberi nama sebagai Operator. Tombol-tombol lainnya diberikan nama yang sesuai dengan fungsinya. 

Salah satu prosedur terpenting dalam program kalkulator ini adalah menampilkan nomor yang dipilih pada layar panel. Untuk menampilkan nomor pada layar panel caranya adalah klik tombol nomor apa saja dan masukkan kode seperti yang ditunjukkan pada script di bawah ini:

Private Sub btnAngka_Click(Index As Integer)
  If jumlah_angka > 0 Then
    If jumlah_angka < 30 Then
      panel.caption = panel.caption + Right$(Str(Index), 1)
      jumlah_angka = jumlah_angka + 1
    End If
  Else
    panel.caption = Right$(Str(Index), 1)
    jumlah_angka = 1
  End If
  CheckValue
End Sub

jumlah_angka adalah variabel yang digunakan untuk memeriksa jumlah digit yang muncul pada layar panel. Prosedur akan memastikan bahwa jika jumlah digit lebih dari satu, maka digit sebelumnya akan ditampilkan ke sebelah kiri dan digit berikutnya akan tetap berada di sebelah kanan. Namun, jika jumlah digitnya nol, maka digit yang diklik akan muncul pada posisi paling kanan di layar panel.

Indeks untuk tombol angka tertentu ditampilkan pada layar panel dengan menggunakan perintah Right $ (Str (Index), 1). Pastikan Anda memberikan nama label pada tombol angka yang sesuai dengan indeks pada tombol yang ditekan. Misalnya, anda memberikan nama  btnAngka(6) untuk tombol angka 6 sehingga sesuai dengan indeksnya, seperti yang ditunjukkan pada gambar di bawah ini.


Subrutin CheckValue adalah perintah yang digunakan untuk menetapkan nilai yang ditampilkan pada layar panel untuk variabel displayValue. Nilai ini kemudian dapat dimanipulasi menggunakan salah satu operator aritmatika.

Selanjutnya Kita buat variabel a, b, c, d, e, f untuk menerima nilai dari angka pertama yang dimasukkan oleh pengguna kemudian kita gunakan kunci variabel untuk menentukan operasi aritmatika apa yang akan dilakukan ketika tombol sama dengan ditekan. Kita juga juga menggunakan variabel angkaBaru dengan tipe data boolean untuk menentukan nomor yang dimasukkan baru atau tidak.

Berikut ini adalah script kalkulator selengkapnya :

Sub CheckValue()
  displayValue = Val(panel.caption)
End Sub

'Dibawah ini adalah script untuk operator:
Private Sub Operator_Click(Index As Integer)
  CheckValue
  If Index = 11 Then
    a = displayValue
    key = 1
  ElseIf Index = 12 Then
    b = displayValue
    key = 2
  ElseIf Index = 13 Then
    c = displayValue
    key = 3
  ElseIf Index = 14 Then
    d = displayValue
    key = 4
  ElseIf Index = 15 Then
    f = displayValue
    key = 5
  End If
  jumlah_angka = 0
  angkaBaru = True
End Sub

'Dibawah ini adalah script untuk tombol sama dengan:
Private Sub Equal_Click()
  CheckValue
  If angkaBaru = True Then
    If key = 1 Then
      e = displayValue + a
    ElseIf key = 2 Then
      e = b - displayValue
    ElseIf key = 3 Then
      e = displayValue * c
    ElseIf key = 5 Then
      e = (f * displayValue) / 100
    ElseIf key = 4 And displayValue <> 0 Then
      e = d / displayValue
  Else
    GoTo error
  End If

  If Abs(e) < 1 Then
    panel.caption = Format(e, "General Number")
  Else
    panel.caption = Str(e)
  End If
  Else
    panel.caption = displayValue
  End If

  GoTo finish
  error: panel.caption = "E"
  finish:
  jumlah_angka = 0
  angkaBaru = False
End Sub

Masukan alamat email anda untuk mendapatkan artikel terbaru:

0 Response to "Penggunaan Kontrol Array Pada Kalkulator Sederhana"

Posting Komentar