Диалоговое окно: различия между версиями

[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
Начало перевода с en
 
завершение перевода
Строка 7:
Простейшим типом диалогового окна является окно сообщения ({{lang-en|message box}}, {{lang-en|alert box}}), которое выводит сообщение и требует от пользователя подтвердить, что сообщение прочитано. Для этого обычно необходимо нажать [[кнопка (компьютеры)| кнопку]] ''OK''. Окно сообщения предназначено для подтверждения системой выполнения команды, вывода сообщения об ошибке и тому подобных случаев, не требующих от пользователя какого-либо выбора.
 
Несмотря на то, что использование окна сообщения является часто применяемым [[шаблон проектирования | шаблоном проектирования]], оно критикуется экспертами по [[юзабилити]] как неэффективное решение для поставленной задачи (защита от ошибочных действий пользователя)<ref>{{cite book | last=Raskin | first=Jef | title=The Humane Interface | publisher=Addison Wesley | year=2000 | isbn= 0201379376 }}</ref>, вдобавок, при наличии лучших альтернатив<ref>{{cite book | last=Cooper | first=Alan | title=About Face 2.0: The Essentials of Interaction Design | publisher=Wiley | date=March 17, 2003 |isbn=0764526413 }}</ref>.
<!-- Юзабилити -->
 
==Немодальные диалоговые окна==
Немодальные ({{lang-en|modeless}}) диалоговые окна используются в случаях, когда выводимая в окно информация не является существенной для для дальнейшей работы системы. Поэтому окно может оставаться открытым, в то время как работа пользователя с системой продолжается. Разновидностью немодального окна является [[панель инструментов]], если она отсоединена или может быть отсоединена от главного окна приложения, так как элементы управления, расположенные на ней, могут использоваться параллельно с работой приложения.
 
В общем случае, правила хорошего [[проектирование программного обеспечения | программного дизайна]] предлагают использовать именно этот тип диалоговых окон, так как он не принуждает пользователя к определённой (возможно, не очевидной для него) последовательности действий. Примером может быть диалоговое окно для изменения каких-либо свойств текущего документа, например, цвета фона или текста. Пользователь может вводить текст, не обращая внимания на его цвет. Но в любой момент может изменить цвет, использую диалоговое окно. (''Приведённый пример не обязательно является лучшим решением. Такую же функциональность может обеспечить и панель инструментов, расположенная в главном окне.'')
 
==Модальные на уровне приложения==
{{main | Модальное окно}}
Модальным называется диалоговое окно, которое временно приостанавливает работу родительского приложения до тех пор, пока пользователь не введёт необходимую информацию и не закроет его. Приложению может требоваться дополнительная информация для продолжения работы или просто подтверждение от пользователя на продолжение потенциально опасной последовательности действий.
 
Специалисты по [[юзабилити]] считают модальные диалоговые окна плохими дизайнерскими решениями, так как они могут приводить пользователя к, так называемым, «ошибкам режима программы». Опасные действия должны иметь возможность отмены везде, где это возможно. К тому же, модальные окна сообщений, пугающие пользователя своим неожиданным появлением, через некоторое время пропускаются им автоматически (так как он привык к ним) и, поэтому, не защищают от опасных действий<ref>Aza Raskin, A List Apart: [http://www.alistapart.com/articles/neveruseawarning Never Use a Warning When you Mean Undo] {{ref-en}}</ref>.
 
==Модальные на уровне окна==
Для смягчения недостатков модальных диалоговых окон (блокирование доступа к приложению, или, даже, к системе в целом) была предложена концепция модальности на уровне окна (или документа). Такой тип диалогового окна введён, например, в [[Mac OS X]], где он называется «диалоговое модальное окно для документа» ({{lang-en|document modal sheet}}).
 
При появлении диалогового окна подобного типа работа с остальными окнами приложения не блокируется. Поскольку окно диалога не перекрывает родительское окно, а прикрепляется к нему, остаётся возможность изменять размеры и положение родительского окна. При этом, естественно, само содержимое окна остаётся неизменным до получения данных от пользователя и закрытия модального диалогового окна.
 
==Примечания==
{{reflist}}
<references/>
 
==Ссылки==