Диалоговое окно (также называемое диалоговое окно (кроме английского языка) или просто диалоговое окно ) является графическим Элемент управления в виде небольшого окна, которое передает информацию пользователю и предлагает ему ответ.
Диалоговые окна классифицируются как «модальные » или «немодальные», в зависимости от того, блокируют ли они взаимодействие с программным обеспечением, инициировавшим диалог. Тип отображаемого диалогового окна зависит от желаемого взаимодействия с пользователем.
Простейшим типом диалогового окна является предупреждение, которое отображает сообщение и может требовать подтверждения того, что сообщение было прочитано, обычно путем нажатия «ОК» или принятия решения о том, следует ли продолжить действие, путем нажатия «ОК» или «Отмена». Оповещения также используются для отображения «уведомления о завершении» - иногда с запросом подтверждения того, что уведомление было прочитано - в случае намеренного закрытия или непреднамеренного закрытия («сбой ») приложения . или операционная система. (Например,, «обнаружила ошибку и должна быть закрыта».) Хотя это частый шаблон взаимодействия для модальных диалогов, он также подвергается критике со стороны экспертов по удобству использования как неэффективное для использования по назначению, которое заключается в защите от ошибок, вызванных деструктивными действиями, и для которого существуют лучшие альтернативы.
Примером диалогового окна является поле, найденное в многие программы, в которых обычно отображается название программы, номер ее версии, а также может содержаться информация об авторских правах.
Немодальный модальные или немодальные диалоговые окна используются, когда запрошенная информация не является существенной для продолжения, и поэтому окно можно оставить открытым, пока работа продолжается в другом месте. Типом немодального диалогового окна является панель инструментов, которая либо отделена от основного приложения, либо может быть отделена от основного приложения, а элементы на панели инструментов могут использоваться для выбора определенных функций или функций приложения..
В общем, хороший дизайн программного обеспечения требует, чтобы диалоги были этого типа там, где это возможно, поскольку они не заставляют пользователя переходить к определенному режиму работы. Примером может служить диалог настроек для текущего документа, например цвет фона и текста. Пользователь может продолжить добавлять текст в главное окно любого цвета, но может изменить его в любое время с помощью диалогового окна. (Это не должно быть примером наилучшего интерфейса для этого; часто те же функции могут быть выполнены с помощью кнопок панели инструментов в главном окне приложения.)
Системный модальные диалоговые окна предотвращают взаимодействие с любым другим окном на экране и не позволяют пользователям переключаться на другое приложение или выполнять любые другие действия до тех пор, пока проблема, представленная в диалоговом окне, не будет решена. Системные модальные диалоги чаще использовались в прошлом в системах, где одновременно могло быть запущено только одно приложение. Одним из текущих примеров является экран выключения текущих версий Windows.
Модальные диалоговые окна временно останавливают программу: пользователь не может продолжить работу, не закрыв диалоговое окно; программе может потребоваться некоторая дополнительная информация, прежде чем она сможет продолжить, или может просто захотеть подтвердить, что пользователь хочет продолжить потенциально опасный курс действий (диалоговое окно подтверждения ). Практики юзабилити обычно рассматривают модальные диалоги как плохие дизайнерские решения, поскольку они склонны вызывать ошибки режима. Опасные действия должны быть по возможности отменяемыми; модальное диалоговое окно с предупреждением, которое появляется неожиданно или автоматически закрывается (поскольку у пользователя выработалась привычка ), не защитит от опасного действия.
Модальное диалоговое окно прерывает основной рабочий процесс. Этот эффект либо стремился разработчик, потому что он фокусируется на завершении текущей задачи, либо отклонялся, потому что он не позволяет пользователю переключиться на другую задачу при необходимости.
В последнее время использовалась концепция модального диалогового окна документа, особенно в macOS и Opera Browser. В первом случае они отображаются в виде листов, прикрепленных к родительскому окну. Эти диалоговые окна блокируют только это окно, пока пользователь не закроет диалоговое окно, позволяя продолжить работу в других окнах даже в том же приложении.
В macOS диалоги появляются из слота в их родительском окне и отображаются с подкрепляющей анимацией. Это помогает пользователю понять, что диалоговое окно прикреплено к родительскому окну, а не просто отображается перед ним. Пока отображается диалоговое окно, в самом базовом документе нельзя выполнять никаких действий, но родительское окно все еще можно перемещать, изменять размер и минимизировать, а другие окна можно вывести на передний план, чтобы пользователь мог работать с ними:
Этот же тип диалогового окна можно сравнить со «стандартными» модальными диалоговыми окнами, используемыми в Windows и других операционных системах.
Сходства включают:
Различия в том, что
Оба механизма имеют недостатки: