Bagi programmer VB 6, pasti familiar dengan kode berikut ini :
Private Sub txtfields_KeyPress(Index As Integer, KeyAscii As Integer)
If mbEditFlag = True Or mbAddNewFlag = True Then
If KeyAscii = 13 Then
If Index <= 2 Then
Me.txtFields(Index + 1).SetFocus
ElseIf Index = 3 Then Me.cmbTitle.SetFocus
ElseIf Index = 4 Then Me.cmbCompany.SetFocus
Else: Me.cmdUpdate.SetFocus
End If
KeyAscii = 0
End If
Else
If KeyAscii = 13 Then
If Index <= 2 Then
Me.txtFields(Index + 1).SetFocus
ElseIf Index = 3 Then Me.cmbTitle.SetFocus
ElseIf Index = 4 Then Me.cmbDepart.SetFocus
Else: Me.cmdClose.SetFocus
End If
KeyAscii = 0
End If
End If
End Sub
Statement KeyAscii=0 berfungsi untuk menghilangkan bunyi BEEP setelah menekan tombol ENTER. Nah bagaimana cara melakukan hal yang sama di VB 2010 ?
Di VB 2010, Statement KeyAscii=0 diganti dengan Statement e.Handled=True seperti terlihat pada contoh procedure berikut ini :
Private Sub txtHP_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles txtHP.KeyPress
If e.KeyChar = Chr(13) Then
Me.txtEmail.Focus()
e.Handled = True
Else
If (Not Char.IsNumber(e.KeyChar) AndAlso Not e.KeyChar = Microsoft.VisualBasic.Chr(Keys.Back)) Then
MsgBox("Enter a valid number", vbCritical)
e.Handled = True
End If
End If
End Sub
Statement If (Not Char.IsNumber(e.KeyChar) AndAlso Not e.KeyChar = Microsoft.VisualBasic.Chr(Keys.Back)) pada contoh di atas berfungsi untuk memvalidasi inputan pada control txtHP hanya untuk numeric saja. Sehingga jika user memasukkan selain numeric pada control txtHP akan menampilkan pesan "Enter a Valid Number".
Semoga bermanfaat.
Private Sub txtfields_KeyPress(Index As Integer, KeyAscii As Integer)
If mbEditFlag = True Or mbAddNewFlag = True Then
If KeyAscii = 13 Then
If Index <= 2 Then
Me.txtFields(Index + 1).SetFocus
ElseIf Index = 3 Then Me.cmbTitle.SetFocus
ElseIf Index = 4 Then Me.cmbCompany.SetFocus
Else: Me.cmdUpdate.SetFocus
End If
KeyAscii = 0
End If
Else
If KeyAscii = 13 Then
If Index <= 2 Then
Me.txtFields(Index + 1).SetFocus
ElseIf Index = 3 Then Me.cmbTitle.SetFocus
ElseIf Index = 4 Then Me.cmbDepart.SetFocus
Else: Me.cmdClose.SetFocus
End If
KeyAscii = 0
End If
End If
End Sub
Statement KeyAscii=0 berfungsi untuk menghilangkan bunyi BEEP setelah menekan tombol ENTER. Nah bagaimana cara melakukan hal yang sama di VB 2010 ?
Di VB 2010, Statement KeyAscii=0 diganti dengan Statement e.Handled=True seperti terlihat pada contoh procedure berikut ini :
Private Sub txtHP_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles txtHP.KeyPress
If e.KeyChar = Chr(13) Then
Me.txtEmail.Focus()
e.Handled = True
Else
If (Not Char.IsNumber(e.KeyChar) AndAlso Not e.KeyChar = Microsoft.VisualBasic.Chr(Keys.Back)) Then
MsgBox("Enter a valid number", vbCritical)
e.Handled = True
End If
End If
End Sub
Statement If (Not Char.IsNumber(e.KeyChar) AndAlso Not e.KeyChar = Microsoft.VisualBasic.Chr(Keys.Back)) pada contoh di atas berfungsi untuk memvalidasi inputan pada control txtHP hanya untuk numeric saja. Sehingga jika user memasukkan selain numeric pada control txtHP akan menampilkan pesan "Enter a Valid Number".
Semoga bermanfaat.