2017-08-13 8 views
1

PaysSafeCardピンをタイプすると何が起こるかをシミュレートする方法があるのだろうかと思います。 PaySafeCardピンには4つのテキストボックスがあり、それぞれ4つの数字の長さです。それらの各1つが満たされると、自動的に次のタブにタブが移動します。私がしたいのはvb.netでそうしているので、毎回タブを手動で押す必要はありません。私はそれをいくつかの考えを与えたが、私はテキストボックスがそのmaxLengthに達したので、次のものにタブするかどうかをチェックするコマンドを見つけることができません。 うまくいけば私は自分自身を理解できたと思う:| 、 御時間ありがとうございます。最大長に達した後、自動的にテキストボックスを切り替える

答えて

1

種類は多岐に渡りますが、私はちょっと退屈です。

はい、変更するたびにTextBox.Textプロパティの長さを確認できます。 TextChangedイベントを使用します。長さが4以上の場合は、次のTextBoxに移動します。

Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged 
    If TextBox1.Text.Length >= 4 Then TextBox2.Focus() 
End Sub 

Private Sub TextBox2_TextChanged(sender As Object, e As EventArgs) Handles TextBox2.TextChanged 
    If TextBox2.Text.Length >= 4 Then TextBox3.Focus() 
End Sub 

Private Sub TextBox3_TextChanged(sender As Object, e As EventArgs) Handles TextBox3.TextChanged 
    If TextBox3.Text.Length >= 4 Then TextBox4.Focus() 
End Sub 

は、私の例では4つのテキストボックスがあり、少しハードコードされているが、それはわずか4のTextBoxのために働く4に番号1。

これはまた素晴らしい感触を追加するので、既にテキストを含むTextBoxを入力すると、それが選択されます。

Private Sub TextBox_Enter(sender As Object, e As EventArgs) Handles TextBox1.Enter, TextBox2.Enter, TextBox3.Enter, TextBox4.Enter 
    DirectCast(sender, TextBox).SelectAll() 
End Sub 

希望これは...、私の例では4つのテキストボックスがある `

+0

を助け4.'に1の番号を付け、私は3つだけを参照してください。) – Codexer

+0

OPは適切TextBox4を扱うことができます。 「自動的に次のタブにタブ」は数字4で定義されていません – djv

+0

ありがとうございました! – n0degg

関連する問題