• 締切済み

[Enter]エンターキーでカーソル移動する方法

プログラム(VB.NET)初心者です。 どうぞよろしくお願いします。 フォームに複数のテキストボックスを配置しているのですが、 タブで次のテキストにフォーカスが移動するように [Enter]キー押下時もフォーカスを次のテキストに移動させたいのです。 色々試してみたものの、なかなかうまくいきません(><) どなたか、わかる方教えていただけたら幸いです。 サンプルソースがあると嬉しいです。 申し訳ありませんが、宜しくお願いします。

みんなの回答

  • psychang
  • ベストアンサー率50% (2/4)
回答No.1

''TextBox1, TextBox2 を実際のオブジェクト名に置換して使ってください。 Private Sub TextBox1_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress ''TextBox1 内で、Enter が押されたとき、TextBox2 にフォーカスが移動します。 Dim KeyAscii As Short = Asc(eventArgs.KeyChar) If KeyAscii = System.Windows.Forms.Keys.Return Then TextBox2.Focus() ''一個一個 ○○.Focus() と指定するしかないのでは?と思います。 End If End Sub

関連するQ&A

  • Access2010 Enterで次テキストへ移動

    Accessのフォームで、 テキストなどの「プロパティ」→「その他」→「Enterキー入力時動作」を「規定」にすると、 フォームビューでそのテキストにフォーカスがあるときにEnterキーを押した場合、 タブ移動順で指定してある次のテキストにフォーカスが移ると思うのですが、 特定のパソコンのみEnterキーを押してもフォーカスが移動されません。 Tabキーではちゃんと移動されるのですが、、、 最初は、テンキーの改行を使っていて、NumLockの影響で使えてないのでは、と思ったのですが、 そもそもEnterキーでフォーカスが移動しないPCはノートPCで、 テンキー部分が存在していないタイプのものでした。 他のPCでは動作するので、PC側の設定だとは思うのですが、 PCそのものの設定なのか、PCに由来するAccessの設定なのか、 何を確認すればよいのかすらわからず、途方に暮れております。 同じような症状を経験し、解決された方が見えましたら、 お知恵を頂戴したく思い、ご質問させて頂きました。 よろしくお願いします。

  • ユーザコントロールでのEnterキータブ移動

    開発言語:VS2008・C# VS2008・C#で郵便番号や電話番号を入力できるユーザコントロールを作成しています。 入力フィールドはTEXTBOX、区切り文字はLABELで、 郵便番号なら3桁 + 区切り文字(-) + 4桁 電話番号なら3桁 + 区切り文字(-) + 4桁 + 区切り文字(-) + 4桁 といった感じで、プロパティで設定された値により、動的に入力フィールドのTEXTBOXを作成しています。 上記のユーザコントロールをフォームに配置し、ENTERキーでフォーカスを移動させたいのですが、現時点で、ユーザコントロール内のTEXTBOXでENTERを押した場合フォーカスはユーザコントロール内の次のTEXTBOXに移動するのですが、最後のTEXTBOXでENTERキーを押した場合ユーザコントロールからフォーカスが移動しなくなってしまいます。 例)住所フィールド(TEXTBOX)→ENTER押下→郵便番号(ユーザコントロール)の上3桁フィールド→ENTER押下→郵便番号(ユーザコントロール)の下4桁フィールド→ENTER押下(フォーカスが次のコントロールに移動しない) ユーザコントロール内のENTERキー移動はKeyDownイベントに関連付け行っていますが、これだとユーザコントロール内しかENTERでフォーカスが移動せずフォーム上の次のコントロールにフォーカスが移動しません。 どなたか、ENTERキーでユーザコントロールからフォーカスが移動できる方法を教えてください。

  • タブダイアログのフォーカスの移動について

    タブダイアログを使った場合の フォーカスの移動についての質問です。 状態としましては フォームにタブ数3のタブダイアログがあり、 それぞれのタブに3つテキストボックスがあります。 また、タブダイアログとは別にフォーム上に 閉じるボタンが1つあります。 現在1つ目のタブの1つ目のテキストボックスに フォーカスがあり、Tabキーでフォーカスを 移動させていくのですが、 3つ目のテキストボックスでtabキーを押すと フォーカスがどこに行ったのか 行方不明になってしまいます。 なぜか2つ目と3つ目のタブの 3つ目のテキストからは 閉じるボタンへフォーカスが移動するのですが、 1つ目のテキストだけが行方不明になってしまいます。 (shift+tabで戻ってきません) また、3つ目のタブのキャプションからの フォーカス移動も行方不明となってしまうます。 タブインデックスは タブダイアログボックスが0 1つ目のタブの1つ目のテキストが1 1つ目のタブの2つ目のテキストが2 1つ目のタブの3つ目のテキストが3 2つ目のタブの1つ目のテキストが4        ・        ・ 3つ目のタブの3つ目のテキストが9 閉じるボタンが10 となっています。 タブダイアログのフォーカス移動を制御するには どうしたら良いのでしょうか? また、行方不明になってしまうフォーカスの 現在位置を見つけるようなことはできますでしょうか? よろしく回答のほどお願いします。

  • VBAのフォーム カーソル移動

    VBAのフォームでテキストボックス(1)~テキストボックス(5) まで作ったとします。 カーソルの移動はtabindexの値を順番につければいいのですが、例えばENTERキーとTABキーを両方押したときは カーソルが一つ飛ぶ制御をしたいのですがどうすればいいでしょうか? つまり カーソルがテキストボックス(1)にいる状態でENTERキーとTABキーを同時に押せばカーソルがテキストボックス(3)に移動するようにしたいのですが、お願いします

  • C# Enterキーの動作について

    お世話になります。 VC#2010にて、フォームにボタンを配置し、そのボタンに フォーカスがあるときにEnterキーを押下すると、そのボタンが 押されたことになってしまいますが、これをさせない方法は ありますでしょうか。 Enterキーは、フォーム側でKeyDown(KeyPress?)処理で 別に行いたいので、押下として反応してしまうと、KeyDownに 処理が飛ばなくなってしまいます。 それを回避する方法です。 何卒よろしくお願いいたします。

  • ユーザーフォーム上のどこからでもEnterで決定

    複数のテキストボックスとコマンドボタンを備えたユーザーフォームを作っています tabキーでフォーカスを移動しながらの作業を想定しているのですが、 全ての値を入力してから[決定]ボタンを押すのに今のところいちいちtabを何回か押して[決定]ボタンまで移動してからEnterしなければならない状態です (入力しなければならない場所は毎回異なるのでタブオーダーをいじるだけでは対応できません) Escキーでユーザーフォームを抜けたい時に、コマンドボタンのCancelプロパティを利用する方法は調べられたのですが 同じようにEnter一回で[決定]ボタンを押したことにできる、あるいは[決定]ボタンが呼び出すはずのプロシージャを呼び出すようにできる方法は無いのでしょうか わかる方おられましたら教えていただけるとありがたいです

  • EXCEL VBA カーソル移動方法?

    エクセル2000でユーザーフォームを作成し テキストボックス1~6まで作成し テキストボックス1~3を1段目、4~6を二段目で配置した場合 エンターキーでケキストボックス1⇒2・・・6のカーソル移動は わかるのですが、テキストボックス2から下に配置してある テキストボックス5に矢印キー↓でカーソルを動かすようにはどのように すればよろしいのでしょうか? 又、おなじようなことなのですがテキストボックス2から 矢印←でテキストボックス1にカーソルを移動させるのも 同じでしょうか? 宜しくお願いいたします。

  • エクセルでEnterキーが効かなくなる現象について

    エクセルでEnterキーが効かなくなる現象について エクセル2007で入力フォームを作りました。テキストボックスにデータを入力しEnterキーを押すと、 次のテキストボックスへ移動します。この動作が、たまに、Enterキーを押しても次のテキストボックスへ 移動しなくなります。(他のパソコンでも同じようになります) 理由がわからない為、エクセルを閉じて、再度起動してみたり、パソコン自体を再起動したりすると、正常に動くのですが・・・(1度、VBAの画面で動かすとまた正常になります) どなたかぜひ助けてください。 よろしくお願いします。

  • カーソルが自動的に移動する方法

    HTML・JSPでHPを作っているのですが4つのテキストボックスがあるとします。そこには1文字しか入力できないようになっていて1文字入力すると自動的につぎのテキストボックスにカーソルを移動させたいのですがどうしたらいいのでしょう? イメージ的にはTABキーを押した感じなのですがそのTABを押さなくても入力した瞬間に次のテキストボックスに入力できるようにしたいのです。 よろしくお願いします。

  • Access2007でのEnterキーについて質問です。

    Access2007でのEnterキーについて質問です。 フォームにテキストボックスを20個ほど置いているのですが、 Enterキーでフォーカスが移動しません。 会社と自宅と両方で作成しているのですが、会社はAccess2000です。 会社でタブオーダーを設定して、会社ではキチンと動作していたのですが、 自宅のAccess2007ではEnterキーが動作しません。 何が原因しているのでしょうか? 対策等アドバイスよろしくお願いします。 m(_ _)m

専門家に質問してみよう