web-dev-qa-db-ja.com

トライステートチェックボックス:クリック後にどのステートを選択する必要がありますか?

選択可能なアイテムの階層があります。たとえば、親と2人の子です。 3つのアイテムすべてにチェックボックスがあります。両方の子がチェックされると、親のチェックボックスもチェックされます。両方の子のチェックを外すと、親のチェックボックスもオフになります。子の1つだけがチェックされると、親は半分チェックされます(塗りつぶしまたはチェックボックス内の対角線)。

この関係は両方の方法で機能します。親のチェックボックスは、子のチェックボックスのすべての選択/クリアとして機能します。

ユーザーがハーフチェックされた親をクリックするとどうなりますか-チェックまたはチェック解除しますか?むしろ、どのような要因がこの決定に影響を与えるのでしょうか?

12

この決定に影響を与える可能性のある要因は?

新しい子はデフォルトでチェックされますか?

もちろん、これはアプリケーションによって異なります。指定していないので、「バックアップするフォルダの選択」について説明しましょう。私が見つけた最良の解決策は、次のように機能するWinZipプロジェクトファイルです。

  • すべての子が個別にチェックされる場合でも、親は「混合」に設定されます。これは、不明なフォルダが含まれていないことを示しています。
  • フォルダをチェックすると、すべての子アイテムが「チェック済み」として表示され、新しい子フォルダも「チェック済み」になります。
  • 親のチェックボックスをクリックすると、「チェック済み-すべての子がチェック済み」、「未チェック-すべての子がオフ」、および「以前の混合状態」を循環できます。

私は直感的にサイクルを混合します->チェック済み->チェックなし。

8
peterchen

私はそれがあなたが尋ねたものではないことを知っていますが、最善の解決策はnotでこの種のことをまったく行うことです。ユーザーは「トライステート」チェックボックスを理解していません。それはまったく意味がありません。チェックボックスには、チェック済みとチェックなしの2つの状態のみが必要です。

すべての子を選択/選択解除する方法が必要な場合は、親アイテムの横にボタンまたはリンクを追加して、その機能を許可します。そうすれば、はるかに明確になります。

8
Charles Boyung

ウィンドウズのアプローチに従う場合、フォルダーのプロパティを見て、読み取り専用のチェックボックスをクリックすると、完全にチェックされた状態から部分的にチェックされた状態に、チェックされていない状態になり、完全にチェックされた状態に戻ります。だから私の意見では、それは同じアプローチに従うべきです。お役に立てれば。

3
Divi