5

「Use foo」というチェックボックスの直後に、ユーザーが使用したい「foo 値」を入力できるテキストボックスが続くフォームを持つことは非常に一般的です。もちろん、このテキストボックスは「Use foo」がチェックされている場合にのみ役に立ちます

この状況に対処する最善の方法がわかりません:

  1. テキストボックスを無効にします (つまり、textboxfoo.Enabled=false;)。
  2. 非表示にする (つまり、textboxfoo.Visible=false;)
  3. ユーザーが必要に応じて foo 値を入力できるようにし、入力した値を無視します。

私が従うことができるベストプラクティスはありますか?

4

7 に答える 7

12

テキストボックスを無効にする必要があります。

テキストボックスが非表示になっていると、フォームが目に見えるように変更されるため、プログラムの使いやすさが低下します。この例は、Microsoft Office にあった古い (非常に人気のない) 消えていくメニュー項目です。人々は、画面上で物が動き回ることを望んでいません。それは方向感覚を失っています。

ユーザーが無駄な値を入力することを許可されている場合、値を入力すると何らかの効果があるという誤った印象を与えます。

于 2009-01-29T22:16:41.897 に答える
2

この場合、テキスト ボックスを無効にすることが最適なオプションです。チェックボックスのチェック/チェック解除に応じてテキスト ボックスが有効/無効になるという事実は、ユーザーに有用なフィードバックを提供します。

テキスト ボックスを非表示にすることはあまり満足のいくものではありません。ボックスがチェックされていない場合、ユーザーは foo オプションを有効にすることで foo 値を指定できることに気付かないでしょう。彼らが次のように考えていることを想像してみてください。

3 番目のオプションは、入力された値が無視されることを示していないため、最悪です。

于 2009-01-29T22:22:29.780 に答える
1

テキストボックスを無効にする

テキストボックスを非表示にすると、「foo」をどのように定義するか、または定義する必要があるかが明確にならないため、ユーザーは「Use Foo」オプションをスキップできます。テキストボックスが表示されているが無効になっていると、ユーザーは「foo」を使用したいと言うと、「foo」を定義できることがわかります。

于 2009-01-29T22:19:40.533 に答える
1

ユーザーは、「Foo」によって何ができるかについて視覚的な手掛かりをまだ持っているため、テキスト ボックスを明らかに無効にする方が好まれます。

しかし、「Foo」がチェックされている/チェックされていないときに開いたり閉じたりする「More options >>」/「<< Less options」パネルはどうですか? 開発者の観点からは多くの作業が必要ですか、ユーザーの観点からはいじりすぎですか? 私自身、「Foo」(非表示の場合)のデフォルトが適切であることを考えると、インターフェースをクリーンアップする方法が気に入っています。

(とは言っても、私はどこでもそれを使用しているわけではありません。すべての良いことには節度があります。)

于 2009-01-29T22:36:50.187 に答える
0

テキスト ボックスを無効にします。
たまたま利用できないオプションがあることをユーザーに明らかにします。非表示にすると、「私の箱はどこへ行った」というユーザーの反応が返されることがあります。

于 2009-01-29T22:24:27.747 に答える
0

ダイアログの不要な空白を避けるという理由だけで、非表示にするよりも無効にすることをお勧めします。

于 2009-01-29T22:17:26.810 に答える
0

別のオプションは、入力者が必要に応じてデータを入力できるようにすることですが、 foo テキストボックスに入力を開始した場合は foo チェックボックスを自動チェックします。

于 2009-01-29T22:51:03.030 に答える