
コンピューティングにおいて、ダイアログボックス[ a ](単にダイアログとも呼ばれる)は、ユーザーに情報を伝え、応答を促す小さなウィンドウの形のグラフィカルな制御要素である。
ダイアログボックスは、ダイアログを開始したソフトウェアとの対話をブロックするかどうかに応じて、 「モーダル」または「モーダルレス」に分類されます。表示されるダイアログボックスの種類は、ユーザーが望む対話内容によって異なります。
最も単純なタイプのダイアログボックスはアラートで、メッセージが表示され、メッセージが読まれたことを確認するために通常「OK」をクリックするか、アクションを実行するかどうかを決定するために「OK」または「キャンセル」をクリックする必要がある場合があります。アラートは、アプリケーションまたはオペレーティングシステムの意図的な終了または意図しない終了(「クラッシュ」)が発生した場合に、 「終了通知」を表示するためにも使用されます。通知が読まれたことを確認するよう求められる場合もあります。(例:「Gedit でエラーが発生したため、終了する必要があります。」)これはモーダルダイアログの頻繁なインタラクションパターンですが、破壊的なアクションによって引き起こされるエラーから保護するという本来の用途には効果的ではなく、より良い代替手段が存在するため、ユーザビリティの専門家から批判されています。[ 3 ] [ 4 ]
ダイアログボックスの一例として、多くのソフトウェアプログラムに搭載されている「バージョン情報」ボックスが挙げられます。このボックスには通常、プログラム名、バージョン番号が表示され、著作権情報が含まれる場合もあります。
非モーダルまたはモードレスのダイアログボックスは、要求された情報が作業の続行に必須ではない場合に使用され、他の作業を継続しながらウィンドウを開いたままにしておくことができます。モードレスダイアログボックスの一種として、メインアプリケーションとは別に存在する、またはメインアプリケーションから切り離されることもあるツールバーがあり、ツールバー内の項目を使用してアプリケーションの特定の機能を選択できます。
一般的に、優れたソフトウェア設計では、可能な限りダイアログをこのタイプにすることが求められます。なぜなら、ダイアログはユーザーを特定の操作モードに強制しないからです。例えば、現在のドキュメントの設定ダイアログ(背景色や文字色など)が挙げられます。ユーザーはメインウィンドウのテキストの色に関係なくテキストを追加し続けることができますが、ダイアログを使用していつでも変更できます。(これは、このための最良のインターフェースの例ではありません。多くの場合、同じ機能はアプリケーションのメインウィンドウのツールバーボタンで実現できます。)
システムモーダルダイアログボックスは、画面上の他のウィンドウとのインタラクションを禁止し、ダイアログボックスに表示された問題が解決されるまで、ユーザーが別のアプリケーションに切り替えたり、他の操作を実行したりすることを阻止します。システムモーダルダイアログは、かつては一度に1つのアプリケーションしか実行できないシングルタスクシステムでより一般的に使用されていました。現在の例としては、現行バージョンのWindowsのシャットダウン画面が挙げられます。
モーダルダイアログボックスはプログラムを一時的に停止させます。ユーザーはダイアログを閉じないと続行できません。プログラムは続行する前に追加情報が必要な場合や、ユーザーが潜在的に危険な操作を実行する意思があるかどうかを確認したい場合などがあります(確認ダイアログボックス)。ユーザビリティの専門家は、モーダルダイアログはモードエラーが発生しやすいため、一般的に設計上の解決策として適切ではないと考えています。危険な操作は可能な限り取り消し可能であるべきです。予期せず表示されたり、(ユーザーが習慣的に閉じるようになったために)自動的に閉じられたりするモーダル警告ダイアログは、危険な操作からユーザーを保護するものではありません。[ 5 ]
モーダルダイアログはメインのワークフローを中断します。この効果は、目の前のタスクの完了に集中できるため開発者が意図的に採用した場合もあれば、ユーザーが必要に応じて別のタスクに切り替えることを妨げるため採用を拒否した場合もあります。
ドキュメントモーダルダイアログの概念は、近年、特にmacOSやOperaブラウザなどで採用されています。これらのダイアログは、ユーザーがダイアログを閉じるまでそのウィンドウのみをブロックし、同じアプリケーション内であっても他のウィンドウでの作業を継続できるようにします。
macOS Big Surより前のmacOSでは、ダイアログは親ウィンドウのスロットから出現し、強調アニメーションで表示されます。これは、ダイアログが親ウィンドウの前面に表示されるだけでなく、親ウィンドウに付随していることをユーザーに理解させるのに役立ちます。Big Sur以降では、親ウィンドウはグレー表示され、ダイアログは親ウィンドウの中央上部に表示されます。ダイアログが表示されている間は、基となるドキュメント自体で作業を行うことはできませんが、親ウィンドウは移動、サイズ変更、最小化することができ、他のウィンドウを前面に表示してユーザーが操作することも可能です。
同じタイプのダイアログボックスは、Windowsやその他のオペレーティングシステムで使用されている「標準的な」モーダルダイアログボックスと比較することができる。
類似点としては以下のようなものがある。
違いは
どちらの仕組みにも欠点がある。