Senin, 15 Oktober 2012

Cara Menangani Event Keyboard Visual Basic 6.0

Ketik Visual Basic! - Ketika kita bermain game menggunakan keyboard seperti menggerakkan objek maju ke depan, belakang, samping kiri dan ka... thumbnail 1 summary
Ketik Visual Basic! - Ketika kita bermain game menggunakan keyboard seperti menggerakkan objek maju ke depan, belakang, samping kiri dan kanan sebenarnya kita sedang menggunakan event keyboard.

Nah karena pentingnya event keyboard untuk berinteraksi dengan user interface (UI) maka pada kesempatan ini akan kita bahas mengenai cara menangani event keyboard pada visual basic 6.0. Dan untuk menangani event pada keyboard terdapat dua level, yaitu

  1. Level kontrol (low level) menangani event keyboard yang terjadi pada sebuah kontrol, misalnya ketika user mengetik pada sebuah textbox. Dan tidak semua kontrol mempunyai event keyboard
  2. Level form (high level) menangani event keyboard yang terjadi pada lingkup sebuah form. Hal ini berarti bahwa form akan merespon terlebih dahulu event keyboard sebelum kontrol yang ada di dalamnya. Agar form tersebut selalu lebih dulu merespon event keyboard maka hal yang harus kita set terlebih dahulu adalah property KeyPreview menjadi True.

Jenis-jenis event keyboard visual basic 6.0

Di dalam visual basic 6.0 terdapat tiga (3) buah jenis event keyboard
  1. Event KeyPress - terjadi jika tombol-tombol yang mempunyai kode ASCII (American Standard Code for Information Interchange) pada keyboard ditekan. ASCII adalah kode dari sekumpulan karakter pada keyboard yang terdiri dari Abjad, Angka, dan Karakter khusus (Enter, Space, Tabe, Backspace)
  2. Event KeyDown - terjadi jika sebuah tombol keyboard ditekan
  3. Event KeyUp - terjadi jika sebuah tombol keyboard dilepas
Nah mungkin ada yang bertanya, apa perbedaan antara event KeyPress dan KeyUp yang keduanya akan terjadi jika ditekan tombol keyboard-nya. Berikut ini adalah jawabannya,

  • Event KeyPress tidak dapat bekerja atau merespon penekanan tombol yang dikombinasi dengan Shift, Ctrl dan Alt
  • Event KeyPress hanya berlaku untuk tombol-tombol yang mempunyai kode ASCII saja, tombol-tombol tertentu seperti tombol panah, tombol keypad, dan tombol fungsi (F1 s/d F12) tidak mempunyai kode ASCII
Jiak event KeyPress terjadi maka event tersebut akan mengembalikan nilai argument KeyASCII yaitu kode ASCII dari tombol keyboard yang ditekan

Private Sub Form1_KeyPress (KeyAscii As Integer)
                 MsgBox “Kode ASCII tombol yang ditekan : “ & KeyAscii
End Sub


Sedangkan event KeyDown dan KeyUp akan mengembalikan nilai dari argumen KeyCode dan Shift. Argumen KeyCode berisi kode tombol keyboard yang ditekan dan argumen Shift berisi kode penekanan tombol Shift, Ctrl dan Alt. Konstanta nilai untuk kedua argumen tersebut dapat dilihat melalui jendela Object Browser. Contoh :

Private Sub Form1_KeyDown(KeyCode As Integer, Shift As Integer)
     MsgBox “Kode tombol yang ditekan : “ & KeyCode
End Sub


Private Sub Form1_KeyUp(KeyCode As Integer, Shift As Integer)
     MsgBox “Kode tombol yang dilepas : “ & KeyCode
End Sub


Aplikasi Cara menangani Event Keyboard Visual Basic 6.0

1. Buat user interface seperti gambar berikut

cara membuat animasi game vb 6
Animasi  Pergerakan Object

2. Atur property masing-masing object seperti berikut

ObjectPropertyValue
Form1CaptionEvent Keyboard
PictureBoxName
Picture


PicTank
-Pilih gambar yang akan ditampilkan- dalam hal ini adalah gambar Tank

3. Buka jendela kode program dan tulis program animasi pergerakan object berikut:


Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
    Case vbKeyLeft
            Call TankKeKiri
    Case vbKeyRight
            Call TankKeKanan
    End Select
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
    Case vbKeyUp
        Call TankKeAtas
    Case vbKeyDown
        Call TankKeBawah
    End Select
End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)
    If KeyAscii = vbKeyEscape Then
        If MsgBox("Tutup animasi ?", vbQuestion + vbYesNo, _
                  Me.Caption) = vbYes Then Unload Me
    End If
End Sub

Private Sub TankKeKiri()
    xpos = xpos - 10
    If xpos < 0 Then
        xpos = 0
    End If
    picTank.Move xpos
End Sub

Private Sub TankKeKanan()
    xpos = xpos + 10
    If xpos > Me.ScaleWidth - picTank.Width Then
        xpos = Me.ScaleWidth - picTank.Width
    End If
    picTank.Move xpos
End Sub

Private Sub TankKeAtas()
    ypos = ypos - 10
    If ypos < 0 Then
        ypos = 0
    End If
    picTank.Move xpos, ypos
End Sub

Private Sub TankKeBawah()
    ypos = ypos + 10
    If ypos > Me.ScaleHeight - picTank.Height Then
        ypos = Me.ScaleHeight - picTank.Height
    End If
    picTank.Move xpos, ypos
End Sub

4. Untuk menjalankan aplikasi Tekan F5 maka akan nampak gambar berikut,

animasi pergerakan object

5. Selesai dan selamat mencoba

Jika masih terdapat seputar pertanyaan mengenai Cara Menangani Event Keyboard Visual Basic 6.0 maka dipersilahkan untuk berkomentar melalui form di bawah ini.

2 komentar

  1. cara menampilkan quadrat di message box misalkan menghitung luas. Keliling = x cm Luas = 10 cm2 Volume cm3 gimana gan?

    BalasHapus