1

Visual Studio .NETでは、すべてのコマンドフィールドと入力フィールドでTabStopプロパティがデフォルトでTrueに設定されています。他のほとんどの設計者は、マウスにあまり切り替えたくない「パワーユーザー」のためのタブコントロールの概念を持っています。

このプロパティは、ユーザーがタブボタンを押してタブの順序を繰り返すときに、コントロールがフォーカスを受け取る機能を切り替えるだけです。

多くの開発者が、すべてのフィールドをタブ順にする必要があるかどうかについて話しているのを聞いたことがあります。これが私がどちらかの側で聞いた議論のいくつかです:

常にオン:

  1. ボタンのタブ順序をオフにすると、ユーザーは手を離す必要があります。
  2. キーボードをクリックしてクリックすると、フローが遅くなります。
  3. Microsoftは、ある理由でデフォルトでtrueに設定しています。
  4. 無効/非表示のボタンはとにかくフォーカスを取得しません。

時々オフ:

  1. 誤って実行されないように、キャンセルボタンと削除ボタンはタブオーダーの外側に配置する必要があります。
  2. はい、タブ順ではありませんが、キーボードからアクセスできるようにニーモニックを設定する必要があります。

私の質問は、優れた設計原則を中心に展開しています。

  1. コマンドボタンのTabStopをオフにする正当な理由はありますか?
  2. 入力フィールドのTabStopをオフにする正当な理由はありますか?

これらのいずれかに「はい」と答えた場合、よく知られているプログラムの例を知っていますか?Windows Media Playerなど?または、コントロールパネルのどこか、またはタブ順序のないフィールド/ボタンの例として何か?

4

1 に答える 1

2

もちろん。マイクロソフト アウトルック。「To」、「CC」、およびその他のフィールドをタブで移動しますが、ツール ストリップ (または「To...」および「Cc...」ボタン) にタブ ストップがありません。

私のレイアウトでは、カーソルを「To」テキストボックスに置き、タブを押すと、「CC」テキストボックスにジャンプします。もう一度タブで件名の TextBox に移動し、最後に次のタブでメールの本文に入ります (TAB は本文にタブを挿入するだけです)。

複雑なフォームには、ユーザーがほとんど使用する必要のない UI 要素がたくさんありますが、これらの奇妙なケースのために存在します。Outlook で新しいメールを開き、そこにあるすべてのボタンを確認します。それらすべてをタブで移動する必要があると想像してください。

これが行われているアプリはたくさんありますが、これは使いやすさのためです。多くの場合、タブ ストップを削除する必要があります。

于 2009-11-10T22:34:33.280 に答える