Multiple Document Interface

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索

MDIMultiple Document Interface (マルチ・ドキュメント・インタフェース)とは親ウィンドウ内に複数の子ウィンドウを表示して管理するグラフィカルユーザインタフェース方式である。SDI方式では複数のアプリケーションウィンドウを立ち上げなければならないという問題を解決するために開発された。SDIでは1つのドキュメントに対し、1つのアプリケーションウィンドウを使用するが、MDIでは1つのドキュメントに対し、1つの子ウィンドウを使用する[1]。また、MDIのドキュメントウィンドウは親ウィンドウにロックおよびクリッピングされる。

Microsoft OfficeなどがSDIからMDI化したアプリケーションの一例である。しかし、MDI化するには既存のアプリケーションのシステムに変更を加える必要がある。

問題点[編集]

一般的にMDIは開かれたウィンドウの管理が問題だとされる。SDIアプリケーションであればタスクバーなどで開かれたウィンドウの情報を一覧できるが、MDIでは通常、子ウィンドウの一覧を確認するためにユーザーがメニューなどからウィンドウ一覧表示機能を実行しなければならない。そのため近年[いつ?]のMDIアプリケーションはこの問題を解決するためタブ機能やタスクバーへの一覧表示機能を装備することでこの問題を解決するようになった。多くのMDIアプリケーションは親ウインドウとの結合・子ウインドウ分離を一括で管理される。1つをMDI化しようとすれば全てがMDI化され、ひとつを親ウインドウと結合しようとすれば全てが親ウインドウと結合される。分離・結合を個別に管理するのはOperaなどごく一部のアプリケーションのみである。MDIはタブ方式のアプリケーションと一緒くたにされる場合もあるようであり、実際タブ方式のアプリケーションと同じように使えるアプリケーションもあるが、通常タブ方式でウィンドウを管理するアプリケーションは個々を子ウィンドウ化してその大きさを変更するようなことはできない。Microsoft Visual Studio 2010以降[2]や、タブブラウザでは、ドキュメント/ページを表示しているタブを切り離して独立ウィンドウ化することができる。

マイクロソフトはMDI形式のアプリケーションを推奨していない[3]。また、Microsoft Foundation ClassWindows FormsではMDIがサポートされているものの、後発のWindows Presentation FoundationWindowsランタイムではMDIがサポートされていない。

なお、タブ方式のインタフェースはTabbed Document Interface (TDI) と呼ばれるが、SDI/MDIほど浸透していない。

また、SDIに似ているが、1つのアプリケーションプロセス中で、親ウィンドウを持たない複数のトップレベルウィンドウを表示する形態をMultiple Top-level Interface (MTI) という。

MDIを使用したアプリケーションの例[編集]

脚注[編集]

[ヘルプ]
  1. ^ MFCにおいて、1つのドキュメントに対して、複数のビューウィンドウを表示する「マルチビュー」という方式も存在するが、SDI/MDIの分類とは異なる。
  2. ^ Visual Studio 2010 エディターの新機能
  3. ^ Microsoft Windows ユーザー エクスペリエンス FAQ

関連項目[編集]