次の方法で共有


方法: Windows フォームでタブ オーダーを設定する

タブ オーダーは、ユーザーが Tab キーを押してコントロール間でフォーカスを移動する順序です。 各フォームには、独自のタブ オーダーがあります。 既定では、タブ オーダーはコントロールを作成した順序と同じです。 タブ オーダー番号は 0 から始まります。

コントロールのタブ オーダーを設定するには

  1. Visual Studio の [表示] メニューで [タブ オーダー] を選択します。

    これにより、フォームのタブ オーダー選択モードがアクティブになります。 各コントロールの左上隅に数値 (TabIndex プロパティを表す) が表示されます。

  2. コントロールを順番にクリックして、必要なタブ オーダーを確立します。

    手記

    タブ オーダー内のコントロールの位置は、0 以上の任意の値に設定できます。 重複が発生すると、2 つのコントロールの z オーダーが評価され、上部のコントロールが最初にタブ付けされます。 (z オーダーは、フォームの z 軸 [深度] に沿ったフォーム上のコントロールのビジュアル レイヤーです。z オーダーによって、他のコントロールの前にあるコントロールが決まります)。z オーダーの詳細については、「Windows フォーム上のオブジェクトのレイヤー化」を参照してください。

  3. 完了したら、[表示] メニューで タブ オーダー を再度選択して、タブ オーダー モードを終了します。

    手記

    フォーカスを取得できないコントロール、および無効なコントロールや非表示のコントロールには、TabIndex プロパティがないため、タブ オーダーには含まれません。 ユーザーが Tab キーを押すと、これらのコントロールはスキップされます。

または、TabIndex プロパティを使用して、[プロパティ] ウィンドウでタブ オーダーを設定することもできます。 コントロールの TabIndex プロパティによって、タブ オーダー内の配置場所が決まります。 既定では、描画される最初のコントロールの TabIndex 値は 0、2 つ目のコントロールの TabIndex は 1 です。

さらに、既定では、GroupBox コントロールには、整数である独自の TabIndex 値があります。 GroupBox コントロール自体は、実行時にフォーカスを持つことはできません。 したがって、GroupBox 内の各コントロールには、.0 から始まる独自の 10 進 TabIndex 値があります。 当然ながら、GroupBox コントロールの TabIndex がインクリメントされると、その中のコントロールもそれに応じてインクリメントされます。 TabIndex 値を 5 から 6 に変更した場合、グループ内の最初のコントロールの TabIndex 値は自動的に 6.0 に変更されます。

最後に、フォーム上の多くのコントロールは、いずれもタブ オーダーでスキップできます。 通常、実行時に Tab キーを連続して押すと、タブ オーダーで各コントロールが選択されます。 TabStop プロパティをオフにすると、フォームのタブ オーダーでコントロールを渡すことができます。

タブ オーダーからコントロールを削除するには

プロパティ ウィンドウで、コントロールの TabStop プロパティを false に設定します。

TabStop プロパティが false に設定されているコントロールは、Tab キーを使用してコントロールを切り替える際にスキップされる場合でも、タブ順でその位置を維持します。

手記

ラジオ ボタン グループには、実行時に 1 つのタブ ストップがあります。 選択したボタン (つまり、Checked プロパティが trueに設定されているボタン) には、その TabStop プロパティが自動的に trueに設定され、他のボタンの TabStop プロパティは falseに設定されます。 RadioButton コントロールのグループ化の詳細については、「Windows フォーム RadioButton コントロールを Setとして機能させる」を参照してください。

関連項目