DOBON.NET DOBON.NETプログラミング掲示板過去ログ

テキストボックス入力後、次のテキストボックスにフォーカスを移動するには?

環境/言語:[Win2000 VB.NET 2002 .NET Framework(1.0)]
分類:[.NET]

fnです。

Titleのとおりなのですが、
フォームにテキストボックスが、3つ並んでいるとして、
textbox1 に数字を入力して、ENTER キーを押すと
textbox2 にフォーカスが移ってすぐに入力できるようにするには、
どうすればよいでしょうか?

ENTERキーのかわりにTABキーを押せばいいのですが、
なんとか、ENTERキーでフォーカス移動する方法を教えてください。

よろしくお願いします。
こんにちは。laughです。

Enter押下でTabと同じ動きにしたいということですが、
下記のコードで実装できると思います。

private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if( e.KeyCode == Keys.Enter )
{
SendKeys.Send("{TAB}");
}
}

KeyDownイベントでキーを拾って
EnterであればSendKesでTabを渡します。
laughさんのを参考にTextBoxだけに反応するようにしてみました。

Private Sub TextBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown, TextBox2.KeyDown, TextBox3.KeyDown
If e.KeyCode = Keys.Enter Then
SendKeys.Send("{TAB}")
End If
End Sub
■No4675に返信(テラオメガさんの記事)
laugh さん、テラオメガ さんありがとうございました。
テラオメガ さんの方法で実装できました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板