9

概して、モーダルインターフェイスは大きな岩を吸います。一方で、ファイルを開く...、または印刷する...を処理するためのより良い方法を考えることはできません。これは、私が思うに、

  • それらは時折の行動であり、まれで重大であり、
  • それらは本質的に原子的です。すべての印刷オプションの指定を終了してそれを実行するか、ショー全体をキャンセルします。

ちょっとしたスタイルガイドをまとめましょう。ダイアログが推奨されるプレゼンテーションであるユースケースと、それが推奨される理由を提案します。ダイアログを非モーダルにすることはできますか?そうである場合、キャンセルは明確な意味を持たなくなるため、トランザクションの境界をどのようにマークしますか。たとえば、[適用]ボタンを使用しますか?

4

5 に答える 5

15

IMO、モーダルインターフェイスは、アプリケーションを続行する前に、ダイアログが実行していることや要求していることを処理する必要がある場合にのみ使用する必要があります。それ以外の場合、ダイアログを使用している場合は、非モーダルである必要があります。

于 2008-09-30T13:05:51.897 に答える
5

非モーダルウィンドウを実行するときは、それらが一意であることを確認する必要があります。2つの同一のツールボックス(たとえば、グラフィカルプログラムの場合)または2つの同一の設定ダイアログ(製品でこれを見た)は、実際には必要ありません。せいぜい紛らわしい。

一方、[検索/置換]ダイアログが非モーダルの場合は感謝します。ドキュメントに戻って最後の変更をキャンセルしたり、他の場所にスキップしたりできます。現在の設定を失うことなく。

どういうわけか、モーダルダイアログは、 Stephen Wrightonの回答で指摘されているように、「他のすべてを停止して、実行していることを終了する」ようにユーザーに指示します。

于 2008-09-30T13:13:27.387 に答える
2

私の経験では、UI でモーダルにする必要があるものはほとんどありません。この最も良い例の 1 つは、おそらくこのサイトのユーザーに非常によく知られている Eclipse です。いくつかのモーダル ダイアログがあり、ここではコア IDE についてのみ説明していますが、それらは大きく 3 つのカテゴリに分類されます: ファイル操作、設定ダイアログ、パラメーター ダイアログです。

設定ダイアログは伝統的にモーダルですが、モーダルである必要もありません。Mac OS 設定モデルを見るだけでよく、構成の変更が即座に行われ、変更が進行中の作業に支障をきたす可能性がある場合にのみモーダル動作が導入されます。

要するに、モーダルであるべきものの良い要約です。このセットの例外は、使用法によって十分に正当化される必要があります。

  • パラメータ入力ダイアログ (例: リファクタリング ウィザード。反例: 検索ダイアログ)
  • ファイル操作
  • 即座に破壊的な影響を与える行動の確認
于 2008-09-30T14:30:44.237 に答える
0

ユーザー ログイン ウィンドウについてはどうですか。セキュリティが必要であると仮定すると、ログインするまでアプリケーションの残りの部分を使用できません (または使用すべきではありません)。

于 2008-09-30T13:50:10.310 に答える
0

違いは、ダイアログが表示されている間にユーザーがアプリケーションでできることがある場合、それはモーダルであってはならないということだと思います。これには、コピー/貼り付けアクションが含まれます。個人的には、ファイル/開くダイアログと印刷ダイアログもモーダルでない方が好きです。モーダル ダイアログは弱い設計の兆候であり、コードをすぐに世に出すために必要な悪だと思います。

于 2008-09-30T14:02:47.550 に答える