• ベストアンサー

VB6 ログイン画面

モジュールの追加でログインのダイアログを追加できるのですが、そこで追加されたログインのダイアログの内部処理が分からなくて困っています。 パスワードと、ユーザ名を入力するだけのものですが、 ユーザ名(U)正確にはUの下に_が引いてあります パスワード(P)で、 実行中にALT+Uと押せばユーザのテキストボックスに、ALT+Pでパスワードのテキストボックスにフォーカスが移動します。 どうやって制御しているのか分かりません。 プロパティにあるのでしょうか?コードがかかれているようでは無いし。分かる方お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

Windowsの仕様です。 下線つきの文字のキーはアクセスキーといいます。 設定している個所は、ラベルでしたらCaptionの文字列で、 そのアクセスキーの前に&を指定します。 で、動作としては、ボタン等のフォーカスを受け取ることが できるコントロールでは、ボタンが押下されたことになり、 ラベル等のフォーカスを持つことができないコントロールでは、 タブオーダーが次に設定されているコントロールにフォーカスが移動します。

その他の回答 (1)

  • Futosi
  • ベストアンサー率46% (23/50)
回答No.2

taka_tetsuさんの回答に補足です。 Captionプロパティを持つものの末尾に(&A)と表記すると、ALT+Aでその次のインデックス を持つものにフォーカスを合わせることができる、という仕様ですね。 テキストボックスにアクセスキーを設定することができない(CaptionではなくTextというプロパティしかもっていない)為にそういう補助機能が付いています。 ですから、 Label1にTabIndex=0が、TextBox1にTabIndex=1が設定されている場合に、 ALT+AでTextBox1にフォーカスを与えたい場合はその前のインデックスであるLabel1にアクセスキーを設定するとよい、ということになります。 蛇足だったかもしれませんね。

関連するQ&A

専門家に質問してみよう