Из Википедии, бесплатной энциклопедии
  (Перенаправлено из многодокументного интерфейса )
Перейти к навигации Перейти к поиску
Пример макета многодокументного интерфейса

Интерфейс множественного документа ( MDI ) представляет собой графический пользовательский интерфейс , в котором несколько окон находятся под единым родительское окном. Такие системы часто позволяют дочерним окнам встраивать в них и другие окна, создавая сложные вложенные иерархии . Это контрастирует с однодокументными интерфейсами ( SDI ), где все окна независимы друг от друга.

Сравнение с однодокументным интерфейсом [ править ]

В сообществе юзабилити было много споров о том, что предпочтительнее - многодокументный или однодокументный интерфейс. Компании-разработчики программного обеспечения использовали оба интерфейса с неоднозначной реакцией. Например, Microsoft изменила свои приложения Office из режима SDI в режим MDI, а затем обратно в режим SDI, хотя степень реализации варьируется от одного компонента к другому. SDI может быть более полезным в случаях, когда пользователи чаще переключаются между отдельными приложениями, чем между окнами одного приложения.

MDI может сбивать с толку, если в нем отсутствует информация об открытых в данный момент окнах. В приложениях MDI разработчик приложения должен предоставить способ переключения между документами или просмотра списка открытых окон, а пользователю, возможно, придется использовать меню для конкретного приложения («список окон» или что-то подобное) для переключения между открытыми документами. Это отличается от приложений SDI, в которых панель задач диспетчера окон или диспетчер задач отображает открытые в данный момент окна. В последние годы для приложений MDI стало все более обычным использование «вкладок» для отображения окон, открытых в данный момент. Интерфейс, в котором вкладки используются для управления открытыми документами, называется « интерфейсом документа с вкладками » (TDI). Другой вариант - "плиточные " стекла" или окна, которые упрощают предотвращение перекрытия содержимого.

Некоторые приложения позволяют пользователю переключаться между этими режимами по своему выбору, в зависимости от личных предпочтений или поставленной задачи.

На сегодняшний день почти все инструменты графического пользовательского интерфейса предоставляют по крайней мере одно решение для разработки MDI. Заметным исключением был Apple Cocoa API до появления групп окон с вкладками в MacOS High Sierra . Инструментарий Java GUI, например Swing , предоставляет класс, javax.swing.JDesktopPaneкоторый служит контейнером для отдельных фреймов (класса javax.swing.JInternalFrame). GTK не имеет стандартной поддержки MDI.

Преимущества [ править ]

  • В интерфейсах с несколькими документами (а также с интерфейсами документов с вкладками ) одна строка меню и / или панель инструментов используются всеми дочерними окнами, что снижает беспорядок и повышает эффективность использования пространства экрана. Этот аргумент менее актуален для операционной системы, в которой используется обычная строка меню.
  • Дочерние окна приложения могут быть скрыты / показаны / свернуты / развернуты в целом.
  • Для дочерних окон могут быть реализованы такие функции, как «Плитка» и «Каскад».
  • Авторы кроссплатформенных приложений могут предоставить своим пользователям согласованное поведение приложений на разных платформах.
  • Если в оконной среде и ОС отсутствует хорошее управление окнами, автор приложения может реализовать это самостоятельно.
  • Модульность: расширенный оконный менеджер можно обновить независимо от приложений.

Недостатки [ править ]

  • Без окна фрейма MDI плавающие панели инструментов из одного приложения могут загромождать рабочее пространство других приложений, потенциально запутывая пользователей беспорядком интерфейсов.
  • Может быть сложно реализовать на настольных компьютерах с использованием нескольких мониторов, поскольку родительскому окну может потребоваться охватить два или более мониторов, скрывая разделы.
  • Виртуальные рабочие столы не могут быть охвачены дочерними элементами MDI. Однако в некоторых случаях это можно решить, запустив другое родительское окно; это имеет место , например, в Opera и Chrome , которые позволяют перетаскивать вкладки / дочерние окна за пределы родительского окна для запуска их собственного родительского окна. В других случаях каждое дочернее окно также является родительским окном, образуя новый «виртуальный» MDI [1] .
  • MDI может затруднить работу с несколькими приложениями одновременно, ограничивая способы, которыми окна из нескольких приложений могут быть расположены вместе, не загораживая друг друга.
  • Общее меню может измениться, что может запутать некоторых пользователей.
  • Дочерние окна MDI ведут себя иначе, чем в приложениях с однодокументным интерфейсом , что требует от пользователей изучения двух тонко разных концепций работы с окнами. Точно так же родительское окно MDI во многих отношениях ведет себя как рабочий стол, но имеет достаточно различий, чтобы сбить с толку некоторых пользователей.
  • Глубоко вложенные, ветвящиеся иерархии дочерних окон могут сбивать с толку.
  • Многие оконные менеджеры имеют встроенную поддержку для управления группами отдельных окон, которая обычно более гибкая, чем MDI, поскольку окна можно группировать и разгруппировывать произвольно. Типичная политика - автоматически группировать окна, принадлежащие одному и тому же приложению. Это, возможно, делает MDI избыточным, поскольку дает решение той же проблемы.
  • Элементы управления и горячие клавиши, изученные для приложения MDI, могут не применяться к другим, тогда как с расширенным оконным менеджером больше настроек поведения и пользовательских предпочтений совместно используются клиентскими приложениями в одной системе

Примеры применения [ править ]

  • Adobe Acrobat : MDI до версии 7.0 (только для Windows); SDI по умолчанию в версии 8.0 (настраивается на MDI); SDI только в 9.0; MDI (с интерфейсом с вкладками) в версии 2015.
  • Corel Wordperfect : MDI. Пользователь может открыть несколько экземпляров WP с одним документом в каждом, если на его компьютере установлено несколько версий WordPerfect. Последние версии поддерживают список открытых документов для данного окна в строке состояния в нижней части окна, обеспечивая вариант TDI.
  • EmEditor : варианты для SDI или MDI.
  • GIMP : SDI с плавающими окнами (MDI доступен как опция под названием «Однооконный режим», начиная с версии 2.8 [2] ).
  • GIMPshop : вилка из GIMP стремится быть больше как Adobe Photoshop. Версия для Windows имеет ограниченный MDI. [3]
  • Хром : комбинация MDI и TDI.
  • Internet Explorer 6 : типичное приложение SDI
  • KWrite : еще один текстовый редактор, разработанный для компиляции программного обеспечения KDE , с упрощенным SDI, но разделяющий многие функции Kate через общий сервер.
  • Кейт : текстовый редактор, разработанный для компиляции программного обеспечения KDE , с расширенными функциями и сложным MDI.
  • Macromedia Studio для Windows: гибридный интерфейс; TDI, если окна документов не развернуты. (По умолчанию они развернуты.)
  • Microsoft Excel 2003: SDI, если вы запускаете новые экземпляры приложения, но MDI, если вы щелкаете меню «Файл? Новый» (но дочерние окна могут появляться на панели задач ОС). Только SDI по состоянию на 2013 год.
  • Microsoft Word 2003: MDI до Microsoft Office 97. После 2000 года Word имеет несколько интерфейсов Windows верхнего уровня , таким образом, открывая оболочке отдельные экземпляры SDI, в то время как операционная система распознает его как отдельный экземпляр приложения MDI. В Word 2000 это был единственный доступный интерфейс, но 2002 и более поздние версии предлагают MDI в качестве опции. Классы Microsoft Foundation (на которых в общих чертах основан Office) поддерживают эту метафору, начиная с версии 7.0, как новую функцию в Visual Studio 2002. SDI только с 2013 года.
  • Firefox : по умолчанию TDI, может быть SDI
  • Notepad ++ , PSPad , TextMate и многие другие текстовые редакторы: TDI
  • Opera : сочетание MDI и TDI (настоящий интерфейс MDI с панелью вкладок для быстрого доступа).
  • Paint.NET : на основе эскизов, TDI
  • UltraEdit : сочетание MDI и TDI (настоящий интерфейс MDI с панелью вкладок для быстрого доступа).
  • VEDIT : комбинация MDI и TDI (настоящий интерфейс MDI с панелью вкладок для быстрого доступа). Специальные «полноразмерные» окна действуют как развернутые окна, но позволяют одновременно использовать меньшие перекрывающиеся окна. Можно запустить несколько экземпляров Vedit, что позволяет использовать его как приложение SDI.
  • Visual Studio .NET : MDI или TDI с меню «Окно», но не оба сразу
  • Среда разработки Visual Studio 6 : типичный современный MDI
  • mIRC : MDI по умолчанию, также может работать в режиме SDI
  • Adobe Photoshop : MDI под MS Windows. В более новых версиях панели инструментов могут перемещаться за пределы окна фрейма. Дочерние окна могут находиться вне кадра, если они не свернуты или развернуты.

Интерфейс в стиле IDE [ править ]

Графические компьютерные приложения с интерфейсом в стиле IDE (IDE) - это те, чьи дочерние окна находятся под одним родительским окном (обычно за исключением модальных окон ). Интерфейс в стиле IDE отличается от интерфейса для работы с несколькими документами (MDI), поскольку все дочерние окна в интерфейсе в стиле IDE расширены за счет дополнительных функций, обычно недоступных в приложениях MDI. Из-за этого приложения в стиле IDE можно рассматривать как функциональную надмножество и потомков приложений MDI.

Примеры расширенной функциональности дочернего окна:

  • Закрепляемые дочерние окна
  • Складные дочерние окна
  • Интерфейс документа с вкладками для вложенных панелей
  • Независимые субпанели родительского окна
  • Разделители графического интерфейса для изменения размера субпанелей родительского окна
  • Стойкость оконных конструкций

Сворачиваемые дочерние окна [ править ]

Распространенным соглашением для дочерних окон в приложениях в стиле IDE является возможность сворачивать дочерние окна, когда они неактивны, или когда это указано пользователем. Свернутые дочерние окна будут соответствовать одной из четырех внешних границ родительского окна с какой-либо меткой или индикатором, позволяющим их снова развернуть.

Интерфейс документа с вкладками для вложенных панелей [ править ]

В отличие от приложений (MDI), которые обычно допускают использование единственного интерфейса с вкладками для родительского окна, приложения с интерфейсом в стиле IDE позволяют использовать вкладки для организации одной или нескольких субпанелей родительского окна.

Примеры приложений в стиле IDE [ править ]

  • NetBeans
  • dBASE
  • Затмение
  • Visual Studio 6
  • Visual Studio .NET
  • RSS Bandit
  • JEdit
  • MATLAB
  • Microsoft Excel в режиме MDI (см. Выше).

Macintosh [ править ]

Mac OS и ее графический интерфейс ориентированы на документы, а не на окна или приложения. Каждое окно документа - это объект, с которым может работать пользователь. Строка меню изменится в зависимости от того, к какому приложению принадлежит переднее окно. Окна приложений можно скрывать и управлять ими как группой, и пользователь может переключаться между приложениями (например, группами окон) или между отдельными окнами, автоматически скрывая палитры , и большинство программ будут продолжать работать даже без открытых окон. Действительно, до Mac OS X было намеренно невозможно чередовать окна нескольких приложений.

Несмотря на это, некоторые необычные приложения, нарушающие принципы человеческого интерфейса (в первую очередь Photoshop ), демонстрируют другое поведение.

См. Также [ править ]

  • Графический пользовательский интерфейс
  • Сравнение интерфейсов документов
  • Интерфейс документа с вкладками
  • Тайловый оконный менеджер
  • Интегрированная среда развития

Внешние ссылки [ править ]

  • Интерфейс Зала стыда аргументов против MDI
  • Формы MDI с использованием C # Формы MDI в .NET с использованием C # и Visual Studio 2010 Express