ダイアログボックス

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
Ubuntuのダイアログボックスの例

ダイアログボックス: Dialog box)とは、GUIにおける特殊なウィンドウの一種であり、ユーザーに情報を提示し、必要に応じてユーザーに応答してもらうもの。(ユーザーに何かを伝えたり、ユーザーに何か入力してもらったりといった)ユーザーとコンピュータ間の対話 (dialog) に使われるため、このように呼ばれる。

ユーザーとのやり取りの種類によって、それぞれ異なる種類のダイアログボックスが使われる。最も単純なダイアログボックスはメッセージボックスアラートと呼ばれる種類のもので、これは単にメッセージを表示してそれをユーザーが読んだことを確認する(OKボタンをクリックする)だけのものである。警告は何らかのアクションを確認するためだったり、プログラムの終了(クラッシュによる終了やユーザーが指示した終了)の通知または確認だったりする。モーダルなダイアログではよくあるパターンだが、より良い代替手法がある場合にもこのパターンを使うことはしばしば批判の対象となる[1]

モードレス[編集]

「ノンモーダル」または「モードレス」のダイアログボックスは、要求している情報が処理の継続に必須ではなく、ウィンドウを開いたまま処理を続行できる場合に使われる。モードレスのダイアログボックスの一種としてツールバーがある。これは、アプリケーション本体とは分離されていたり、分離可能となっているもので、ツールバー内のアイテムを使うとアプリケーションの特定の機能を使うことができる。

一般に優れた設計のソフトウェアでは、モードレスの方がユーザーにとって扱いやすい(ユーザーにモード操作を強いない)ため、可能な限りこの種のダイアログボックスを使う。例えば、現在の文書のプロパティ(背景色や文字色など)を設定するダイアログボックスはモードレスとされていることがある。ユーザーが主ウィンドウにテキストを追加するのは、色の設定がどうであっても継続可能であり、好きなときにそのダイアログボックスを使って色を変更できる。なお、それがこの場合の最善のインタフェースだというわけではない。同様の機能はツールバーでも実現できる。

モーダル[編集]

モーダル」なダイアログボックスでは、それがクローズされるまでプログラム本体の操作ができなくなる。再開するために追加情報を必要としている場合や、何らかの危険性のある操作を続行することをユーザーに確認する場合などに使われる。モーダルなダイアログボックスはいわゆるモードエラーを引き起こしやすいことから、悪い設計として批判されることが多い。危険な操作は全くできないようにしておくべきだし、不意に出現するダイアログボックスや馴化によって中身に注目されずに消されてしまうダイアログボックスは、危険な操作への警告として役に立たない。

これまでモーダルなダイアログボックスは、システム全体のモーダルかアプリケーション単位のモーダルであった。すなわち、それが消されるまでシステム全体の制御を奪うか、対応するアプリケーションの制御だけを奪う。最近では Mac OS X で特によく見られるように、文書単位のモーダルが登場している。この場合、ダイアログボックスは親ウィンドウに付属するシートとして表示され、同じアプリケーションでも別ウィンドウであれば制御が奪われず、操作を続行可能である。

脚注[編集]