Penanganan Event Keypress (Kepress Handler) pada Textbox VB .NET

Untuk memudahkan input data user Anda sering kali ingin menekan tombol enter 
pada texbox lalu user mengharapkan kursor dapat pindah sendiri ke texbox berikutnya.
Misalnya Anda punya form seperti di bawah ini:



Coba lihat kursor sekarang berada pada textbox Nomor Induk.
Nah setelah pemakai program Anda mengisi nomor induk lalu menekan tombol Enter,
si pemakai maunya kursor itu otomatis pindah ke isian texbox nama dan seterusnya.
Tugas Anda sebagai programmer adalah membuat kode nya.

Di bawah ini adalah kode yang paling sederhana dapat Anda berikan:

Private
 Sub TextBox1_KeyPress(ByVal sender As ObjectByVal e _
   As System.Windows.Forms.KeyPressEventArgs)Handles TextBox1.KeyPress        
If Asc(e.KeyChar) = 13 Then
            TextBox2.Focus()
        End If
End Sub

Di bawah ini adalah kode lengkapnya:
Public Class Form1
    Private Sub TextBox1_KeyPress(ByVal sender As ObjectByVal e _
       As System.Windows.Forms.KeyPressEventArgsHandles TextBox1.KeyPress
        If Asc(e.KeyChar) = 13 Then
            TextBox2.Focus()
        End If
    End Sub
     Private Sub TextBox2_KeyPress(ByVal sender As ObjectByVal e _
     AsSystem.Windows.Forms.KeyPressEventArgsHandles TextBox2.KeyPress
       If Asc(e.KeyChar) = 13 Then
            TextBox3.Focus()
        End If
    End Sub
End Class
Bagaimana jika Anda punya Form dengan banyak textbox ?
Apakah Anda akan membuka setiap event TextBox_KeyPresspada form Anda?
Kebanyakan programmer mau cari cara yang lebih efisien dan lebih simple.

Saya punya tips yang lebih simple.
Anda dapat memusatkan penanganan (Handle) keypress nya pada satu sub procedure.
Di bawah ini adalah kodenya:
Public Class Form1
    Private Sub TextBox1_KeyPress(ByVal sender As ObjectByVal e _
AsSystem.Windows.Forms.KeyPressEventArgsHandles TextBox1.KeyPress
        HandleKeypress(sender, e)
   End Sub

    Private Sub TextBox2_KeyPress(ByVal sender As ObjectByVal e _
AsSystem.Windows.Forms.KeyPressEventArgsHandles TextBox2.KeyPress
        HandleKeypress(sender, e)
    End Sub   

    Private Sub HandleKeypress(ByVal sender As ObjectByVal e _
As System.Windows.Forms.KeyPressEventArgs)
        If Asc(e.KeyChar) = 13 Then
            Select Case sender.name
                Case "TextBox1"
                    TextBox2.Focus()
                Case "TextBox2"
                    TextBox3.Focus()
            End Select
        End If
    End Sub
End Class
Penjelasan detail mengenai arti dari kode-kode di atas bisa anda peroleh di e-book saya yang
berjudul E-Book Trik Membuat Program Faktur dengan Visual Basic .Net dan Microsoft Access 2007

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel