Информатика окно это: Окно (информатика) — Википедия. Что такое Окно (информатика) – Окно (информатика) — Википедия

Содержание

Окно (информатика) — Википедия. Что такое Окно (информатика)

Перекрывающиеся окна

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

История

Впервые концепцию перекрывающихся окон, как и многие другие концепции пользовательских интерфейсов, разработали в исследовательском центре Xerox PARC для системы Xerox Alto, а точнее для среды разработки языка smalltalk в 1974 году[1][2]. В этой среде у окон уже были границы и заголовки, но ещё не появилось кнопок управления окнами. Дальнейшее развитие оконный интерфейс получил в среде Xerox Star, но первым коммерчески успешным компьютером, использующим окна стал вышедший в 1984 году Apple Macintosh.

Основные части окна

  • содержимое окна;
  • рамка окна — отделяет содержимое одного окна от другого, лежащего ниже. Кроме того, в современных оконных менеджерах рамка окна позволяет изменять размер окна, путём перетаскивания границы окна, либо угла. Для компактности и уменьшения визуального шума может быть заменена тенью от окна;
  • уголок изменения размеров — располагается в правом нижнем углу окна и предоставляет дополнительную площадь для изменения размеров окна (см. закон Фиттса). Присутствует не во всех окнах;
  • Заголовок окна — располагается обычно в верхней части окна и содержит название окна, а также кнопки управления окном. Если окно не поддерживает свободного перетаскивания, именно заголовок является областью, позволяющей перетаскивать окно. Иногда название окна может скрываться, а в заголовок выводиться другие элементы управления, такие как вкладки браузера;
  • Кнопки управления окном — начиная с Windows 95, типичным является следующий набор кнопок:
    • меню окна — одновременно является значком приложения. Располагается в левой части заголовка;
    • свернуть ( _ ) — в ранних ОС превращала окно приложения в значок на рабочем столе, в более новых — скрывает окно, оставляя кнопку на панели задач;
    • развернуть ( □ ) — позволяет развернуть окно на весь экран, или переключить приложение в полноэкранный режим;
    • закрыть ( × ) — позволяет завершить работу с приложением, либо закрыть конкретное окно. Символ «×» для закрытия окна впервые появился в системе Atari TOS в 1985, позже — независимо от неё в NeXTSTEP, но широкое распространение получил с выходом Windows 95[3].

В некоторых системах, например в OS X, кнопки управления окном располагаются слева. Кроме того, в OS X до версии 10.7 отсутствовала кнопка полноэкранного режима.

Особенности поведения окон

Перемещение окон

При использовании оконного интерфейса, большинство окон может свободно перемещаться по экрану. Обычно перемещение окон производится при захвате заголовка окна, однако при необходимости можно задать для перемещения также произвольную область, либо всё окно, кроме располагающихся на нём элементов интерфейса. Также перемещать окна можно, выбрав пункт в меню окна — в этом случае возможность перемещать окно доступна также с клавиатуры.

Появление новых окон обычно не регламентируется системой, и они занимают место посередине экрана, либо заданное при разработке программы. Некоторые оконные менеджеры, например входящие в состав среды KDE, располагают вновь открывающиеся диалоговые окна и окна предупреждений так, чтобы они не перекрывали уже открытые. Другой способ — располагать вновь открытые диалоговые окна «каскадом», то есть с небольшим смещением от предыдущего, чтобы оставался виден заголовок окна.

При перемещении окон может использоваться эффект «прилипания». Возле границы такого окна появляется область, и если в этой области находится граница другого окна, перемещаемое окно становится вплотную к другому, и остаётся неподвижным до тех пор, пока пользователь, перемещая курсор, не попытается вывести окно за пределы этой области. Примером такого подхода может служить проигрыватель Winamp, в котором эффект прилипания реализует ещё одну функцию: дочерние окна программы после прилипания к главному окну могут перемещаться вместе с ним как одно окно. Слипшиеся друг с другом дочерние окна того же плеера такого эффекта не имеют.

Управление размером окон

Обычно, изменить размер окна можно тремя способами — через меню окна (в этом случае изменение размеров возможно с клавиатуры), путём перемещения границ окна либо специальной области в правом нижнем углу окна.

При уменьшении размеров окна могут стать недоступными некоторые важные элементы управления. Чтобы этого избежать, задаётся минимальный размер окна. Если элементов управления слишком много, либо при уменьшении окна они либо попадают в специальное меню, либо в окне появляются полосы прокрутки. Некоторые окна не позволяют изменять размер, среди них — большинство диалоговых окон.

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

Полноэкранный режим

В ОС семейства Windows большинство оконных приложений может использовать «псевдополноэкранный режим». При нажатии на кнопку «развернуть», окно занимает всю доступную площадь экрана, кроме панели задач. При этом все элементы окна, кроме рамки, остаются. Для некоторых видов приложений, например, воспроизводящих видео, такой режим неприемлем, и такие приложения обычно закрывают экран полностью, не отображая в таком режиме большинства элементов управления, либо отображая упрощённую их версию. Похожий режим доступен в операционной системе OS X, начиная с версии 10.7 «Lion».

Скрытие окна

В большинстве современных операционных систем и оконных менеджеров в окнах присутствует кнопка «свернуть». При нажатии на эту кнопку окно приложения скрывается, но само приложение не прекращает работу. В разных операционных системах поведение этой кнопки по умолчанию может различаться. В системах, имеющих панель задач, окно приложения можно вызвать нажатием на кнопку приложения на панели задач. При отсутствии панели задач, свёрнутое окно либо уменьшается до одного заголовка, либо на рабочем столе (в старых версиях Windows — в окне диспетчера программ) появляется значок, и раскрыть окно можно нажатием на него. То же самое работает и для дочерних окон приложения, которые не отображаются в панели задач, но имеют кнопку «свернуть».

Закрытие окна

Для главного окна приложения закрытие окна обычно предполагает выход из приложения, либо документа (при использовании многодокументного интерфейса). Некоторые приложения, например Skype, не завершают работу при нажатии на кнопку «закрыть», а имеют для этой цели специальную функцию в меню приложения. Кнопка «закрыть» в них работает почти так же, как кнопка «свернуть».

Для дочерних окон приложения закрытие, как правило, означает лишь его скрытие, без выгрузки из памяти каких-либо данных. Такие окна обычно можно вернуть из меню приложения, либо какими-то элементами управления в главном окне.

В диалоговых окнах закрытие окна обычно работает аналогично нажатию на кнопку «отмена». Некоторые окна могут блокировать возможность закрытия, например, если выполняется действие, для отмены которого нужно выполнить какие-то другие операции. Также, при работе с документами, при отсутствии функции автосохранения документов, применяется режим, когда при нажатии на кнопку закрытия появляется диалог, предлагающий сохранить внесённые изменения. При использовании таких утилит резервного копирования, как Time Machine, подобные диалоги считаются антипаттернами.

Наложение окон

В большинстве случаев, окна перекрывают друг друга так, что активное в текущий момент окно располагается поверх остальных, за ним идёт окно, которое было активно предыдущим, и так далее. Однако, для некоторых окон можно включить режим «поверх всех окон», при котором окно не может быть перекрыто другими, даже если оно неактивно. В некоторых оконных менеджерах, например Openbox, возможность расположить окно поверх остальных доступна из меню окна, а также есть возможность вывести кнопку с этой функцией рядом со стандартными кнопками управления окном.

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

Разновидности окон

Диалоговые окна

Window (windowing system).svg
диалог, запрашивающий сохранение при закрытии файла

Диалоговые окна обычно не являются главными окнами приложения, не отображаются в панели задач и не могут быть развёрнуты на весь экран, а часто даже не позволяют изменять размер окна. Диалоговое окно должно быть закрыто после выполнения действия или прочтения сообщения, для этого в диалоговом окне имеются кнопки, нажатие на которые приводит к закрытию окна. Поэтому диалоговое окно не нуждается также в кнопке «закрыть». Особняком стоит OS X, где диалоги в большинстве случаев являются не окнами, а специальными элементами управления, которые появляются из-под заголовка родительского окна.

Модальное окно

Модальное окно — окно, обычно диалоговое, открытие которого блокирует доступ к элементам родительского окна.

Панели, палитры и плавающие окна

Панели, палитры и плавающие окна, как правило, располагаются поверх основного окна приложения или окна документа, даже если в нём фокус ввода. При использовании MDI, либо многооконного интерфейса, панели, как правило, остаются общими для всех документов. Обычно, панели и палитры имеют упрощённый вид окна с уменьшенным заголовком и без кнопок «развернуть» и «свернуть». При использовании технологии Drag and Dock, панель, если её подвести к краю окна, превращается в панель инструментов.

Окна документов в многодокументных приложениях

В многодокументных приложениях поведение окон зависит от того, какая разновидность многодокументного интерфейса используется.

В SDI окно документа по сути является главным окном приложения. Если документов несколько, все окна приложения равнозначны. Выход из приложения происходит при закрытии всех окон приложения. Переключение между окнами приложения происходит так же, как и переключение между приложениями: например, через панель задач.

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

MDI предполагает существование основного окна приложения и окон документов, располагающихся внутри основного окна. Закрытие всех окон документов не приводит к выходу из программы — в этом случае лишь отображается пустая область для окон. Если окно документа развёрнуто, оно теряет заголовок и рамку, а кнопки управления окном и значок приложения переносится в строку меню. Если окно свёрнуто, оно ведёт себя так же, как обычное окно при отсутствии панели задач. Если открыто несколько окон документов, и они развёрнуты на весь экран, переключение между ними происходит через пункт «окно» в строке меню.

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

  • Window (windowing system).svg

    Inkscape в режиме SDI. У каждого окна документа есть панели инструментов

  • Window (windowing system).svg

    GIMP со вкладками. В каждой вкладке — уменьшенное изображение документа

  • Window (windowing system).svg

    Qt Designer в режиме MDI. Правый край окна документа вылез за пределы области MDI — видна полоса прокрутки

  • Window (windowing system).svg

    GIMP в многооконном режиме. Слева, справа и снизу от окна документа — плавающие окна

Стилизованные окна

Window (windowing system).svg Проигрыватель QMMP использует окна, внешний вид и поведение некоторых элементов управления в которых отличается от стандартного интерфейса

Некоторые программы, такие как медиаплееры могут использовать стилизованные окна, самостоятельно управляющие отображением и поведением всех элементов управления. Такие программы часто позволяют использовать настраиваемый по желанию пользователя внешний вид. Часто в таких программах привычные элементы управления имеют несколько другое назначение, либо располагаются в другом месте. Например, в проигрывателе Winamp, и других, использующих тот же интерфейс обложек, кнопка между «закрыть» и «свернуть» не разворачивает плеер на весь экран, а уменьшает его окно до размера заголовка, при этом некоторые виджеты переносятся в заголовок, позволяя управлять плеером в минимизированном состоянии.

Альтернативы

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

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

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

Примечания

Литература

  • Алан Купер. об интерфейсе. Основы проектирования = About Face. The Essentials of Interaction Design. — 3. — СПб: Символ-Плюс, 2009. — С. 476-493. — 688 с. — 1500 экз. — ISBN 978 5 93286 132 5.
  • Windows — OS X Human Interface Guidelines

Окно (информатика) — Википедия

Перекрывающиеся окна

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

История

Впервые концепцию перекрывающихся окон, как и многие другие концепции пользовательских интерфейсов, разработали в исследовательском центре Xerox PARC для системы Xerox Alto, а точнее для среды разработки языка smalltalk в 1974 году[1][2]. В этой среде у окон уже были границы и заголовки, но ещё не появилось кнопок управления окнами. Дальнейшее развитие оконный интерфейс получил в среде Xerox Star, но первым коммерчески успешным компьютером, использующим окна стал вышедший в 1984 году Apple Macintosh.

Основные части окна

  • содержимое окна;
  • рамка окна — отделяет содержимое одного окна от другого, лежащего ниже. Кроме того, в современных оконных менеджерах рамка окна позволяет изменять размер окна, путём перетаскивания границы окна, либо угла. Для компактности и уменьшения визуального шума может быть заменена тенью от окна;
  • уголок изменения размеров — располагается в правом нижнем углу окна и предоставляет дополнительную площадь для изменения размеров окна (см. закон Фиттса). Присутствует не во всех окнах;
  • Заголовок окна — располагается обычно в верхней части окна и содержит название окна, а также кнопки управления окном. Если окно не поддерживает свободного перетаскивания, именно заголовок является областью, позволяющей перетаскивать окно. Иногда название окна может скрываться, а в заголовок выводиться другие элементы управления, такие как вкладки браузера;
  • Кнопки управления окном — начиная с Windows 95, типичным является следующий набор кнопок:
    • меню окна — одновременно является значком приложения. Располагается в левой части заголовка;
    • свернуть ( _ ) — в ранних ОС превращала окно приложения в значок на рабочем столе, в более новых — скрывает окно, оставляя кнопку на панели задач;
    • развернуть ( □ ) — позволяет развернуть окно на весь экран, или переключить приложение в полноэкранный режим;
    • закрыть ( × ) — позволяет завершить работу с приложением, либо закрыть конкретное окно. Символ «×» для закрытия окна впервые появился в системе Atari TOS в 1985, позже — независимо от неё в NeXTSTEP, но широкое распространение получил с выходом Windows 95[3].

В некоторых системах, например в OS X, кнопки управления окном располагаются слева. Кроме того, в OS X до версии 10.7 отсутствовала кнопка полноэкранного режима.

Особенности поведения окон

Перемещение окон

При использовании оконного интерфейса, большинство окон может свободно перемещаться по экрану. Обычно перемещение окон производится при захвате заголовка окна, однако при необходимости можно задать для перемещения также произвольную область, либо всё окно, кроме располагающихся на нём элементов интерфейса. Также перемещать окна можно, выбрав пункт в меню окна — в этом случае возможность перемещать окно доступна также с клавиатуры.

Появление новых окон обычно не регламентируется системой, и они занимают место посередине экрана, либо заданное при разработке программы. Некоторые оконные менеджеры, например входящие в состав среды KDE, располагают вновь открывающиеся диалоговые окна и окна предупреждений так, чтобы они не перекрывали уже открытые. Другой способ — располагать вновь открытые диалоговые окна «каскадом», то есть с небольшим смещением от предыдущего, чтобы оставался виден заголовок окна.

При перемещении окон может использоваться эффект «прилипания». Возле границы такого окна появляется область, и если в этой области находится граница другого окна, перемещаемое окно становится вплотную к другому, и остаётся неподвижным до тех пор, пока пользователь, перемещая курсор, не попытается вывести окно за пределы этой области. Примером такого подхода может служить проигрыватель Winamp, в котором эффект прилипания реализует ещё одну функцию: дочерние окна программы после прилипания к главному окну могут перемещаться вместе с ним как одно окно. Слипшиеся друг с другом дочерние окна того же плеера такого эффекта не имеют.

Управление размером окон

Обычно, изменить размер окна можно тремя способами — через меню окна (в этом случае изменение размеров возможно с клавиатуры), путём перемещения границ окна либо специальной области в правом нижнем углу окна.

При уменьшении размеров окна могут стать недоступными некоторые важные элементы управления. Чтобы этого избежать, задаётся минимальный размер окна. Если элементов управления слишком много, либо при уменьшении окна они либо попадают в специальное меню, либо в окне появляются полосы прокрутки. Некоторые окна не позволяют изменять размер, среди них — большинство диалоговых окон.

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

Полноэкранный режим

В ОС семейства Windows большинство оконных приложений может использовать «псевдополноэкранный режим». При нажатии на кнопку «развернуть», окно занимает всю доступную площадь экрана, кроме панели задач. При этом все элементы окна, кроме рамки, остаются. Для некоторых видов приложений, например, воспроизводящих видео, такой режим неприемлем, и такие приложения обычно закрывают экран полностью, не отображая в таком режиме большинства элементов управления, либо отображая упрощённую их версию. Похожий режим доступен в операционной системе OS X, начиная с версии 10.7 «Lion».

Скрытие окна

В большинстве современных операционных систем и оконных менеджеров в окнах присутствует кнопка «свернуть». При нажатии на эту кнопку окно приложения скрывается, но само приложение не прекращает работу. В разных операционных системах поведение этой кнопки по умолчанию может различаться. В системах, имеющих панель задач, окно приложения можно вызвать нажатием на кнопку приложения на панели задач. При отсутствии панели задач, свёрнутое окно либо уменьшается до одного заголовка, либо на рабочем столе (в старых версиях Windows — в окне диспетчера программ) появляется значок, и раскрыть окно можно нажатием на него. То же самое работает и для дочерних окон приложения, которые не отображаются в панели задач, но имеют кнопку «свернуть».

Закрытие окна

Для главного окна приложения закрытие окна обычно предполагает выход из приложения, либо документа (при использовании многодокументного интерфейса). Некоторые приложения, например Skype, не завершают работу при нажатии на кнопку «закрыть», а имеют для этой цели специальную функцию в меню приложения. Кнопка «закрыть» в них работает почти так же, как кнопка «свернуть».

Для дочерних окон приложения закрытие, как правило, означает лишь его скрытие, без выгрузки из памяти каких-либо данных. Такие окна обычно можно вернуть из меню приложения, либо какими-то элементами управления в главном окне.

В диалоговых окнах закрытие окна обычно работает аналогично нажатию на кнопку «отмена». Некоторые окна могут блокировать возможность закрытия, например, если выполняется действие, для отмены которого нужно выполнить какие-то другие операции. Также, при работе с документами, при отсутствии функции автосохранения документов, применяется режим, когда при нажатии на кнопку закрытия появляется диалог, предлагающий сохранить внесённые изменения. При использовании таких утилит резервного копирования, как Time Machine, подобные диалоги считаются антипаттернами.

Наложение окон

В большинстве случаев, окна перекрывают друг друга так, что активное в текущий момент окно располагается поверх остальных, за ним идёт окно, которое было активно предыдущим, и так далее. Однако, для некоторых окон можно включить режим «поверх всех окон», при котором окно не может быть перекрыто другими, даже если оно неактивно. В некоторых оконных менеджерах, например Openbox, возможность расположить окно поверх остальных доступна из меню окна, а также есть возможность вывести кнопку с этой функцией рядом со стандартными кнопками управления окном.

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

Разновидности окон

Диалоговые окна

диалог, запрашивающий сохранение при закрытии файла

Диалоговые окна обычно не являются главными окнами приложения, не отображаются в панели задач и не могут быть развёрнуты на весь экран, а часто даже не позволяют изменять размер окна. Диалоговое окно должно быть закрыто после выполнения действия или прочтения сообщения, для этого в диалоговом окне имеются кнопки, нажатие на которые приводит к закрытию окна. Поэтому диалоговое окно не нуждается также в кнопке «закрыть». Особняком стоит OS X, где диалоги в большинстве случаев являются не окнами, а специальными элементами управления, которые появляются из-под заголовка родительского окна.

Модальное окно

Модальное окно — окно, обычно диалоговое, открытие которого блокирует доступ к элементам родительского окна.

Панели, палитры и плавающие окна

Панели, палитры и плавающие окна, как правило, располагаются поверх основного окна приложения или окна документа, даже если в нём фокус ввода. При использовании MDI, либо многооконного интерфейса, панели, как правило, остаются общими для всех документов. Обычно, панели и палитры имеют упрощённый вид окна с уменьшенным заголовком и без кнопок «развернуть» и «свернуть». При использовании технологии Drag and Dock, панель, если её подвести к краю окна, превращается в панель инструментов.

Окна документов в многодокументных приложениях

В многодокументных приложениях поведение окон зависит от того, какая разновидность многодокументного интерфейса используется.

В SDI окно документа по сути является главным окном приложения. Если документов несколько, все окна приложения равнозначны. Выход из приложения происходит при закрытии всех окон приложения. Переключение между окнами приложения происходит так же, как и переключение между приложениями: например, через панель задач.

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

MDI предполагает существование основного окна приложения и окон документов, располагающихся внутри основного окна. Закрытие всех окон документов не приводит к выходу из программы — в этом случае лишь отображается пустая область для окон. Если окно документа развёрнуто, оно теряет заголовок и рамку, а кнопки управления окном и значок приложения переносится в строку меню. Если окно свёрнуто, оно ведёт себя так же, как обычное окно при отсутствии панели задач. Если открыто несколько окон документов, и они развёрнуты на весь экран, переключение между ними происходит через пункт «окно» в строке меню.

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

  • Inkscape в режиме SDI. У каждого окна документа есть панели инструментов

  • GIMP со вкладками. В каждой вкладке — уменьшенное изображение документа

  • Qt Designer в режиме MDI. Правый край окна документа вылез за пределы области MDI — видна полоса прокрутки

  • GIMP в многооконном режиме. Слева, справа и снизу от окна документа — плавающие окна

Стилизованные окна

Проигрыватель QMMP использует окна, внешний вид и поведение некоторых элементов управления в которых отличается от стандартного интерфейса

Некоторые программы, такие как медиаплееры могут использовать стилизованные окна, самостоятельно управляющие отображением и поведением всех элементов управления. Такие программы часто позволяют использовать настраиваемый по желанию пользователя внешний вид. Часто в таких программах привычные элементы управления имеют несколько другое назначение, либо располагаются в другом месте. Например, в проигрывателе Winamp, и других, использующих тот же интерфейс обложек, кнопка между «закрыть» и «свернуть» не разворачивает плеер на весь экран, а уменьшает его окно до размера заголовка, при этом некоторые виджеты переносятся в заголовок, позволяя управлять плеером в минимизированном состоянии.

Альтернативы

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

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

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

Примечания

Литература

  • Алан Купер. об интерфейсе. Основы проектирования = About Face. The Essentials of Interaction Design. — 3. — СПб: Символ-Плюс, 2009. — С. 476-493. — 688 с. — 1500 экз. — ISBN 978 5 93286 132 5.
  • Windows — OS X Human Interface Guidelines

Окно (информатика) — Википедия

Перекрывающиеся окна

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

История

Впервые концепцию перекрывающихся окон, как и многие другие концепции пользовательских интерфейсов, разработали в исследовательском центре Xerox PARC для системы Xerox Alto, а точнее для среды разработки языка smalltalk в 1974 году[1][2]. В этой среде у окон уже были границы и заголовки, но ещё не появилось кнопок управления окнами. Дальнейшее развитие оконный интерфейс получил в среде Xerox Star, но первым коммерчески успешным компьютером, использующим окна стал вышедший в 1984 году Apple Macintosh.

Основные части окна

  • содержимое окна;
  • рамка окна — отделяет содержимое одного окна от другого, лежащего ниже. Кроме того, в современных оконных менеджерах рамка окна позволяет изменять размер окна, путём перетаскивания границы окна, либо угла. Для компактности и уменьшения визуального шума может быть заменена тенью от окна;
  • уголок изменения размеров — располагается в правом нижнем углу окна и предоставляет дополнительную площадь для изменения размеров окна (см. закон Фиттса). Присутствует не во всех окнах;
  • Заголовок окна — располагается обычно в верхней части окна и содержит название окна, а также кнопки управления окном. Если окно не поддерживает свободного перетаскивания, именно заголовок является областью, позволяющей перетаскивать окно. Иногда название окна может скрываться, а в заголовок выводиться другие элементы управления, такие как вкладки браузера;
  • Кнопки управления окном — начиная с Windows 95, типичным является следующий набор кнопок:
    • меню окна — одновременно является значком приложения. Располагается в левой части заголовка;
    • свернуть ( _ ) — в ранних ОС превращала окно приложения в значок на рабочем столе, в более новых — скрывает окно, оставляя кнопку на панели задач;
    • развернуть ( □ ) — позволяет развернуть окно на весь экран, или переключить приложение в полноэкранный режим;
    • закрыть ( × ) — позволяет завершить работу с приложением, либо закрыть конкретное окно. Символ «×» для закрытия окна впервые появился в системе Atari TOS в 1985, позже — независимо от неё в NeXTSTEP, но широкое распространение получил с выходом Windows 95[3].

В некоторых системах, например в OS X, кнопки управления окном располагаются слева. Кроме того, в OS X до версии 10.7 отсутствовала кнопка полноэкранного режима.

Особенности поведения окон

Перемещение окон

При использовании оконного интерфейса, большинство окон может свободно перемещаться по экрану. Обычно перемещение окон производится при захвате заголовка окна, однако при необходимости можно задать для перемещения также произвольную область, либо всё окно, кроме располагающихся на нём элементов интерфейса. Также перемещать окна можно, выбрав пункт в меню окна — в этом случае возможность перемещать окно доступна также с клавиатуры.

Появление новых окон обычно не регламентируется системой, и они занимают место посередине экрана, либо заданное при разработке программы. Некоторые оконные менеджеры, например входящие в состав среды KDE, располагают вновь открывающиеся диалоговые окна и окна предупреждений так, чтобы они не перекрывали уже открытые. Другой способ — располагать вновь открытые диалоговые окна «каскадом», то есть с небольшим смещением от предыдущего, чтобы оставался виден заголовок окна.

При перемещении окон может использоваться эффект «прилипания». Возле границы такого окна появляется область, и если в этой области находится граница другого окна, перемещаемое окно становится вплотную к другому, и остаётся неподвижным до тех пор, пока пользователь, перемещая курсор, не попытается вывести окно за пределы этой области. Примером такого подхода может служить проигрыватель Winamp, в котором эффект прилипания реализует ещё одну функцию: дочерние окна программы после прилипания к главному окну могут перемещаться вместе с ним как одно окно. Слипшиеся друг с другом дочерние окна того же плеера такого эффекта не имеют.

Управление размером окон

Обычно, изменить размер окна можно тремя способами — через меню окна (в этом случае изменение размеров возможно с клавиатуры), путём перемещения границ окна либо специальной области в правом нижнем углу окна.

При уменьшении размеров окна могут стать недоступными некоторые важные элементы управления. Чтобы этого избежать, задаётся минимальный размер окна. Если элементов управления слишком много, либо при уменьшении окна они либо попадают в специальное меню, либо в окне появляются полосы прокрутки. Некоторые окна не позволяют изменять размер, среди них — большинство диалоговых окон.

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

Полноэкранный режим

В ОС семейства Windows большинство оконных приложений может использовать «псевдополноэкранный режим». При нажатии на кнопку «развернуть», окно занимает всю доступную площадь экрана, кроме панели задач. При этом все элементы окна, кроме рамки, остаются. Для некоторых видов приложений, например, воспроизводящих видео, такой режим неприемлем, и такие приложения обычно закрывают экран полностью, не отображая в таком режиме большинства элементов управления, либо отображая упрощённую их версию. Похожий режим доступен в операционной системе OS X, начиная с версии 10.7 «Lion».

Скрытие окна

В большинстве современных операционных систем и оконных менеджеров в окнах присутствует кнопка «свернуть». При нажатии на эту кнопку окно приложения скрывается, но само приложение не прекращает работу. В разных операционных системах поведение этой кнопки по умолчанию может различаться. В системах, имеющих панель задач, окно приложения можно вызвать нажатием на кнопку приложения на панели задач. При отсутствии панели задач, свёрнутое окно либо уменьшается до одного заголовка, либо на рабочем столе (в старых версиях Windows — в окне диспетчера программ) появляется значок, и раскрыть окно можно нажатием на него. То же самое работает и для дочерних окон приложения, которые не отображаются в панели задач, но имеют кнопку «свернуть».

Закрытие окна

Для главного окна приложения закрытие окна обычно предполагает выход из приложения, либо документа (при использовании многодокументного интерфейса). Некоторые приложения, например Skype, не завершают работу при нажатии на кнопку «закрыть», а имеют для этой цели специальную функцию в меню приложения. Кнопка «закрыть» в них работает почти так же, как кнопка «свернуть».

Для дочерних окон приложения закрытие, как правило, означает лишь его скрытие, без выгрузки из памяти каких-либо данных. Такие окна обычно можно вернуть из меню приложения, либо какими-то элементами управления в главном окне.

В диалоговых окнах закрытие окна обычно работает аналогично нажатию на кнопку «отмена». Некоторые окна могут блокировать возможность закрытия, например, если выполняется действие, для отмены которого нужно выполнить какие-то другие операции. Также, при работе с документами, при отсутствии функции автосохранения документов, применяется режим, когда при нажатии на кнопку закрытия появляется диалог, предлагающий сохранить внесённые изменения. При использовании таких утилит резервного копирования, как Time Machine, подобные диалоги считаются антипаттернами.

Наложение окон

В большинстве случаев, окна перекрывают друг друга так, что активное в текущий момент окно располагается поверх остальных, за ним идёт окно, которое было активно предыдущим, и так далее. Однако, для некоторых окон можно включить режим «поверх всех окон», при котором окно не может быть перекрыто другими, даже если оно неактивно. В некоторых оконных менеджерах, например Openbox, возможность расположить окно поверх остальных доступна из меню окна, а также есть возможность вывести кнопку с этой функцией рядом со стандартными кнопками управления окном.

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

Разновидности окон

Диалоговые окна

Window (windowing system).svg диалог, запрашивающий сохранение при закрытии файла

Диалоговые окна обычно не являются главными окнами приложения, не отображаются в панели задач и не могут быть развёрнуты на весь экран, а часто даже не позволяют изменять размер окна. Диалоговое окно должно быть закрыто после выполнения действия или прочтения сообщения, для этого в диалоговом окне имеются кнопки, нажатие на которые приводит к закрытию окна. Поэтому диалоговое окно не нуждается также в кнопке «закрыть». Особняком стоит OS X, где диалоги в большинстве случаев являются не окнами, а специальными элементами управления, которые появляются из-под заголовка родительского окна.

Модальное окно

Модальное окно — окно, обычно диалоговое, открытие которого блокирует доступ к элементам родительского окна.

Панели, палитры и плавающие окна

Панели, палитры и плавающие окна, как правило, располагаются поверх основного окна приложения или окна документа, даже если в нём фокус ввода. При использовании MDI, либо многооконного интерфейса, панели, как правило, остаются общими для всех документов. Обычно, панели и палитры имеют упрощённый вид окна с уменьшенным заголовком и без кнопок «развернуть» и «свернуть». При использовании технологии Drag and Dock, панель, если её подвести к краю окна, превращается в панель инструментов.

Окна документов в многодокументных приложениях

В многодокументных приложениях поведение окон зависит от того, какая разновидность многодокументного интерфейса используется.

В SDI окно документа по сути является главным окном приложения. Если документов несколько, все окна приложения равнозначны. Выход из приложения происходит при закрытии всех окон приложения. Переключение между окнами приложения происходит так же, как и переключение между приложениями: например, через панель задач.

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

MDI предполагает существование основного окна приложения и окон документов, располагающихся внутри основного окна. Закрытие всех окон документов не приводит к выходу из программы — в этом случае лишь отображается пустая область для окон. Если окно документа развёрнуто, оно теряет заголовок и рамку, а кнопки управления окном и значок приложения переносится в строку меню. Если окно свёрнуто, оно ведёт себя так же, как обычное окно при отсутствии панели задач. Если открыто несколько окон документов, и они развёрнуты на весь экран, переключение между ними происходит через пункт «окно» в строке меню.

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

  • Window (windowing system).svg

    Inkscape в режиме SDI. У каждого окна документа есть панели инструментов

  • Window (windowing system).svg

    GIMP со вкладками. В каждой вкладке — уменьшенное изображение документа

  • Window (windowing system).svg

    Qt Designer в режиме MDI. Правый край окна документа вылез за пределы области MDI — видна полоса прокрутки

  • Window (windowing system).svg

    GIMP в многооконном режиме. Слева, справа и снизу от окна документа — плавающие окна

Стилизованные окна

Window (windowing system).svg Проигрыватель QMMP использует окна, внешний вид и поведение некоторых элементов управления в которых отличается от стандартного интерфейса

Некоторые программы, такие как медиаплееры могут использовать стилизованные окна, самостоятельно управляющие отображением и поведением всех элементов управления. Такие программы часто позволяют использовать настраиваемый по желанию пользователя внешний вид. Часто в таких программах привычные элементы управления имеют несколько другое назначение, либо располагаются в другом месте. Например, в проигрывателе Winamp, и других, использующих тот же интерфейс обложек, кнопка между «закрыть» и «свернуть» не разворачивает плеер на весь экран, а уменьшает его окно до размера заголовка, при этом некоторые виджеты переносятся в заголовок, позволяя управлять плеером в минимизированном состоянии.

Альтернативы

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

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

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

Примечания

Литература

  • Алан Купер. об интерфейсе. Основы проектирования = About Face. The Essentials of Interaction Design. — 3. — СПб: Символ-Плюс, 2009. — С. 476-493. — 688 с. — 1500 экз. — ISBN 978 5 93286 132 5.
  • Windows — OS X Human Interface Guidelines

Окно (информатика) Википедия

Перекрывающиеся окна

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

История[ | ]

Впервые концепцию перекрывающихся окон, как и многие другие концепции пользовательских интерфейсов, разработали в исследовательском центре Xerox PARC для системы Xerox Alto, а точнее для среды разработки языка smalltalk в 1974 году[1][2]. В этой среде у окон уже были границы и заголовки, но ещё не появилось кнопок управления окнами. Дальнейшее развитие оконный интерфейс получил в среде Xerox Star, но первым коммерчески успешным компьютером, использующим окна стал вышедший в 1984 году Apple Macintosh.

Основные части окна[ | ]

  • содержимое окна;
  • рамка окна — отделяет содержимое одного окна от другого, лежащего ниже. Кроме того, в современных оконных менеджерах рамка окна позволяет изменять размер окна, путём перетаскивания границы окна, либо угла. Для компактности и уменьшения визуального шума может быть заменена тенью от окна;
  • уголок изменения размеров — располагается в правом нижнем углу окна и предоставляет дополнительную площадь для изменения размеров окна (см. закон Фиттса). Присутствует не во всех окнах;
  • Заголовок окна — располагается обычно в верхней части окна и содержит название окна, а также кнопки управления окном. Если окно не поддерживает свободного перетаскивания, именно заголовок является областью, позволяющей перетаскивать окно. Иногда название окна может скрываться, а в заголовок выводиться другие элементы управления, такие как вкладки браузера;
  • Кнопки управления окном — начиная с Windows 95, типичным является следующий набор кнопок:
    • меню окна — одновременно является значком приложения. Располагается в левой части заголовка;
    • свернуть (_) — в ранних ОС превращала окно приложения в значок на рабочем столе, в более новых — скрывает окно, оставляя кнопку на панели задач;
    • развернуть (□) — позволяет развернуть окно на весь экран, или переключить приложение в полноэкранный режим;
    • закрыть ( × ) — позволяет завершить работу с приложением, либо закрыть конкретное окно. Символ «×» для закрытия окна впервые появился в системе Atari TOS в 1985, позже — независимо от неё в NeXTSTEP, но широкое распространение получил с выходом Windows 95[3].

В некоторых системах, например в OS X, кнопки управления окном располагаются слева. Кроме того, в OS X до версии 10.7 отсутствовала кнопка полноэкранного режима.

Окно (информатика) — Википедия (с комментариями)

Материал из Википедии — свободной энциклопедии

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

История

Впервые концепцию перекрывающихся окон, как и многие другие концепции пользовательских интерфейсов, разработали в исследовательском центре Xerox PARC для системы Xerox Alto, а точнее для среды разработки языка smalltalk в 1974 году[1][2]. В этой среде у окон уже были границы и заголовки, но ещё не появилось кнопок управления окнами. Дальнейшее развитие оконный интерфейс получил в среде Xerox Star, но первым коммерчески успешным компьютером, использующим окна стал вышедший в 1984 году Apple Macintosh.

Основные части окна

  • содержимое окна;
  • рамка окна — отделяет содержимое одного окна от другого, лежащего ниже. Кроме того, в современных оконных менеджерах рамка окна позволяет изменять размер окна, путём перетаскивания границы окна, либо угла. Для компактности и уменьшения визуального шума может быть заменена тенью от окна;
  • уголок изменения размеров — располагается в правом нижнем углу окна и предоставляет дополнительную площадь для изменения размеров окна (см. закон Фиттса). Присутствует не во всех окнах;
  • Заголовок окна — располагается обычно в верхней части окна и содержит название окна, а также кнопки управления окном. Если окно не поддерживает свободного перетаскивания, именно заголовок является областью, позволяющей перетаскивать окно. Иногда название окна может скрываться, а в заголовок выводиться другие элементы управления, такие как вкладки браузера;
  • Кнопки управления окном — начиная с Windows 95, типичным является следующий набор кнопок:
    • меню окна — одновременно является значком приложения. Располагается в левой части заголовка;
    • свернуть ( _ ) — в ранних ОС превращала окно приложения в значок на рабочем столе, в более новых — скрывает окно, оставляя кнопку на панели задач;
    • развернуть ( □ ) — позволяет развернуть окно на весь экран, или переключить приложение в полноэкранный режим;
    • закрыть ( × ) — позволяет завершить работу с приложением, либо закрыть конкретное окно. Символ «×» для закрытия окна впервые появился в системе Atari TOS в 1985, позже — независимо от неё в NeXTSTEP, но широкое распространение получил с выходом Windows 95[3].

В некоторых системах, например в OS X, кнопки управления окном располагаются слева. Кроме того, в OS X до версии 10.7 отсутствовала кнопка полноэкранного режима.

Особенности поведения окон

Перемещение окон

При использовании оконного интерфейса, большинство окон может свободно перемещаться по экрану. Обычно перемещение окон производится при захвате заголовка окна, однако при необходимости можно задать для перемещения также произвольную область, либо всё окно, кроме располагающихся на нём элементов интерфейса. Также перемещать окна можно, выбрав пункт в меню окна — в этом случае возможность перемещать окно доступна также с клавиатуры.

Появление новых окон обычно не регламентируется системой, и они занимают место посередине экрана, либо заданное при разработке программы. Некоторые оконные менеджеры, например входящие в состав среды KDE, располагают вновь открывающиеся диалоговые окна и окна предупреждений так, чтобы они не перекрывали уже открытые. Другой способ — располагать вновь открытые диалоговые окна «каскадом», то есть с небольшим смещением от предыдущего, чтобы оставался виден заголовок окна.

При перемещении окон может использоваться эффект «прилипания». Возле границы такого окна появляется область, и если в этой области находится граница другого окна, перемещаемое окно становится вплотную к другому, и остаётся неподвижным до тех пор, пока пользователь, перемещая курсор, не попытается вывести окно за пределы этой области. Примером такого подхода может служить проигрыватель Winamp, в котором эффект прилипания реализует ещё одну функцию: дочерние окна программы после прилипания к главному окну могут перемещаться вместе с ним как одно окно. Слипшиеся друг с другом дочерние окна того же плеера такого эффекта не имеют.

Управление размером окон

Обычно, изменить размер окна можно тремя способами — через меню окна (в этом случае изменение размеров возможно с клавиатуры), путём перемещения границ окна либо специальной области в правом нижнем углу окна.

При уменьшении размеров окна могут стать недоступными некоторые важные элементы управления. Чтобы этого избежать, задаётся минимальный размер окна. Если элементов управления слишком много, либо при уменьшении окна они либо попадают в специальное меню, либо в окне появляются полосы прокрутки. Некоторые окна не позволяют изменять размер, среди них — большинство диалоговых окон.

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

Полноэкранный режим

В ОС семейства Windows большинство оконных приложений может использовать «псевдополноэкранный режим». При нажатии на кнопку «развернуть», окно занимает всю доступную площадь экрана, кроме панели задач. При этом все элементы окна, кроме рамки, остаются. Для некоторых видов приложений, например, воспроизводящих видео, такой режим неприемлем, и такие приложения обычно закрывают экран полностью, не отображая в таком режиме большинства элементов управления, либо отображая упрощённую их версию. Похожий режим доступен в операционной системе OS X, начиная с версии 10.7 «Lion».

Скрытие окна

В большинстве современных операционных систем и оконных менеджеров в окнах присутствует кнопка «свернуть». При нажатии на эту кнопку окно приложения скрывается, но само приложение не прекращает работу. В разных операционных системах поведение этой кнопки по умолчанию может различаться. В системах, имеющих панель задач, окно приложения можно вызвать нажатием на кнопку приложения на панели задач. При отсутствии панели задач, свёрнутое окно либо уменьшается до одного заголовка, либо на рабочем столе (в старых версиях Windows — в окне диспетчера программ) появляется значок, и раскрыть окно можно нажатием на него. То же самое работает и для дочерних окон приложения, которые не отображаются в панели задач, но имеют кнопку «свернуть».

Закрытие окна

Для главного окна приложения закрытие окна обычно предполагает выход из приложения, либо документа (при использовании многодокументного интерфейса). Некоторые приложения, например Skype, не завершают работу при нажатии на кнопку «закрыть», а имеют для этой цели специальную функцию в меню приложения. Кнопка «закрыть» в них работает почти так же, как кнопка «свернуть».

Для дочерних окон приложения закрытие, как правило, означает лишь его скрытие, без выгрузки из памяти каких-либо данных. Такие окна обычно можно вернуть из меню приложения, либо какими-то элементами управления в главном окне.

В диалоговых окнах закрытие окна обычно работает аналогично нажатию на кнопку «отмена». Некоторые окна могут блокировать возможность закрытия, например, если выполняется действие, для отмены которого нужно выполнить какие-то другие операции. Также, при работе с документами, при отсутствии функции автосохранения документов, применяется режим, когда при нажатии на кнопку закрытия появляется диалог, предлагающий сохранить внесённые изменения. При использовании таких утилит резервного копирования, как Time Machine, подобные диалоги считаются антипаттернами.

Наложение окон

В большинстве случаев, окна перекрывают друг друга так, что активное в текущий момент окно располагается поверх остальных, за ним идёт окно, которое было активно предыдущим, и так далее. Однако, для некоторых окон можно включить режим «поверх всех окон», при котором окно не может быть перекрыто другими, даже если оно неактивно. В некоторых оконных менеджерах, например Openbox, возможность расположить окно поверх остальных доступна из меню окна, а также есть возможность вывести кнопку с этой функцией рядом со стандартными кнопками управления окном.

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

Разновидности окон

Диалоговые окна

Диалоговые окна обычно не являются главными окнами приложения, не отображаются в панели задач и не могут быть развёрнуты на весь экран, а часто даже не позволяют изменять размер окна. Диалоговое окно должно быть закрыто после выполнения действия или прочтения сообщения, для этого в диалоговом окне имеются кнопки, нажатие на которые приводит к закрытию окна. Поэтому диалоговое окно не нуждается также в кнопке «закрыть». Особняком стоит OS X, где диалоги в большинстве случаев являются не окнами, а специальными элементами управления, которые появляются из-под заголовка родительского окна.

Модальное окно

Модальное окно — окно, обычно диалоговое, открытие которого блокирует доступ к элементам родительского окна.

Панели, палитры и плавающие окна

Панели, палитры и плавающие окна, как правило, располагаются поверх основного окна приложения или окна документа, даже если в нём фокус ввода. При использовании MDI, либо многооконного интерфейса, панели, как правило, остаются общими для всех документов. Обычно, панели и палитры имеют упрощённый вид окна с уменьшенным заголовком и без кнопок «развернуть» и «свернуть». При использовании технологии Drag and Dock, панель, если её подвести к краю окна, превращается в панель инструментов.

Окна документов в многодокументных приложениях

В многодокументных приложениях поведение окон зависит от того, какая разновидность многодокументного интерфейса используется.

В SDI окно документа по сути является главным окном приложения. Если документов несколько, все окна приложения равнозначны. Выход из приложения происходит при закрытии всех окон приложения. Переключение между окнами приложения происходит так же, как и переключение между приложениями: например, через панель задач.

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

MDI предполагает существование основного окна приложения и окон документов, располагающихся внутри основного окна. Закрытие всех окон документов не приводит к выходу из программы — в этом случае лишь отображается пустая область для окон. Если окно документа развёрнуто, оно теряет заголовок и рамку, а кнопки управления окном и значок приложения переносится в строку меню. Если окно свёрнуто, оно ведёт себя так же, как обычное окно при отсутствии панели задач. Если открыто несколько окон документов, и они развёрнуты на весь экран, переключение между ними происходит через пункт «окно» в строке меню.

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

  • SDI Inkscape.png

    Inkscape в режиме SDI. У каждого окна документа есть панели инструментов

  • GIMP screenshot.png

    GIMP со вкладками. В каждой вкладке — уменьшенное изображение документа

  • Ошибка создания миниатюры: Файл не найден

    Qt Designer в режиме MDI. Правый край окна документа вылез за пределы области MDI — видна полоса прокрутки

  • Linux screenshot2.png

    GIMP в многооконном режиме. Слева, справа и снизу от окна документа — плавающие окна

Стилизованные окна

Некоторые программы, такие как медиаплееры могут использовать стилизованные окна, самостоятельно управляющие отображением и поведением всех элементов управления. Такие программы часто позволяют использовать настраиваемый по желанию пользователя внешний вид. Часто в таких программах привычные элементы управления имеют несколько другое назначение, либо располагаются в другом месте. Например, в проигрывателе Winamp, и других, использующих тот же интерфейс обложек, кнопка между «закрыть» и «свернуть» не разворачивает плеер на весь экран, а уменьшает его окно до размера заголовка, при этом некоторые виджеты переносятся в заголовок, позволяя управлять плеером в минимизированном состоянии.

Альтернативы

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

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

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

Напишите отзыв о статье «Окно (информатика)»

Примечания

  1. [toastytech.com/guis/alto3.html The Xerox Alto]
  2. [arstechnica.com/features/2005/05/gui/3/ A History of the GUI | Ars Technica]
  3. Лорен Арчер. [habrahabr.ru/company/web_payment_ru/blog/233461/ С чего началось использование [x] в дизайне графических интерфейсов] = [medium.com/re-form/x-to-close-417936dfc0dc X to Close. The origins of the use of [x] in UI design.].</span>
  4. </ol>

Литература

  • Алан Купер. об интерфейсе. Основы проектирования = About Face. The Essentials of Interaction Design. — 3. — СПб: Символ-Плюс, 2009. — С. 476-493. — 688 с. — 1500 экз. — ISBN 978 5 93286 132 5.
  • [developer.apple.com/library/mac/documentation/UserExperience/Conceptual/OSXHIGuidelines/WindowAppearanceBehavior.html#//apple_ref/doc/uid/20000957-Ch43-SW1 Windows] — OS X Human Interface Guidelines

Отрывок, характеризующий Окно (информатика)

– Дай мне честное слово, что ты не будешь ездить?
– Честное слово!

Уже был второй час ночи, когда Пьер вышел oт своего друга. Ночь была июньская, петербургская, бессумрачная ночь. Пьер сел в извозчичью коляску с намерением ехать домой. Но чем ближе он подъезжал, тем более он чувствовал невозможность заснуть в эту ночь, походившую более на вечер или на утро. Далеко было видно по пустым улицам. Дорогой Пьер вспомнил, что у Анатоля Курагина нынче вечером должно было собраться обычное игорное общество, после которого обыкновенно шла попойка, кончавшаяся одним из любимых увеселений Пьера.
«Хорошо бы было поехать к Курагину», подумал он.
Но тотчас же он вспомнил данное князю Андрею честное слово не бывать у Курагина. Но тотчас же, как это бывает с людьми, называемыми бесхарактерными, ему так страстно захотелось еще раз испытать эту столь знакомую ему беспутную жизнь, что он решился ехать. И тотчас же ему пришла в голову мысль, что данное слово ничего не значит, потому что еще прежде, чем князю Андрею, он дал также князю Анатолю слово быть у него; наконец, он подумал, что все эти честные слова – такие условные вещи, не имеющие никакого определенного смысла, особенно ежели сообразить, что, может быть, завтра же или он умрет или случится с ним что нибудь такое необыкновенное, что не будет уже ни честного, ни бесчестного. Такого рода рассуждения, уничтожая все его решения и предположения, часто приходили к Пьеру. Он поехал к Курагину.
Подъехав к крыльцу большого дома у конно гвардейских казарм, в которых жил Анатоль, он поднялся на освещенное крыльцо, на лестницу, и вошел в отворенную дверь. В передней никого не было; валялись пустые бутылки, плащи, калоши; пахло вином, слышался дальний говор и крик.
Игра и ужин уже кончились, но гости еще не разъезжались. Пьер скинул плащ и вошел в первую комнату, где стояли остатки ужина и один лакей, думая, что его никто не видит, допивал тайком недопитые стаканы. Из третьей комнаты слышались возня, хохот, крики знакомых голосов и рев медведя.
Человек восемь молодых людей толпились озабоченно около открытого окна. Трое возились с молодым медведем, которого один таскал на цепи, пугая им другого.
– Держу за Стивенса сто! – кричал один.
– Смотри не поддерживать! – кричал другой.
– Я за Долохова! – кричал третий. – Разними, Курагин.
– Ну, бросьте Мишку, тут пари.
– Одним духом, иначе проиграно, – кричал четвертый.
– Яков, давай бутылку, Яков! – кричал сам хозяин, высокий красавец, стоявший посреди толпы в одной тонкой рубашке, раскрытой на средине груди. – Стойте, господа. Вот он Петруша, милый друг, – обратился он к Пьеру.
Другой голос невысокого человека, с ясными голубыми глазами, особенно поражавший среди этих всех пьяных голосов своим трезвым выражением, закричал от окна: «Иди сюда – разойми пари!» Это был Долохов, семеновский офицер, известный игрок и бретёр, живший вместе с Анатолем. Пьер улыбался, весело глядя вокруг себя.
– Ничего не понимаю. В чем дело?
– Стойте, он не пьян. Дай бутылку, – сказал Анатоль и, взяв со стола стакан, подошел к Пьеру.
– Прежде всего пей.
Пьер стал пить стакан за стаканом, исподлобья оглядывая пьяных гостей, которые опять столпились у окна, и прислушиваясь к их говору. Анатоль наливал ему вино и рассказывал, что Долохов держит пари с англичанином Стивенсом, моряком, бывшим тут, в том, что он, Долохов, выпьет бутылку рому, сидя на окне третьего этажа с опущенными наружу ногами.
– Ну, пей же всю! – сказал Анатоль, подавая последний стакан Пьеру, – а то не пущу!
– Нет, не хочу, – сказал Пьер, отталкивая Анатоля, и подошел к окну.
Долохов держал за руку англичанина и ясно, отчетливо выговаривал условия пари, обращаясь преимущественно к Анатолю и Пьеру.
Долохов был человек среднего роста, курчавый и с светлыми, голубыми глазами. Ему было лет двадцать пять. Он не носил усов, как и все пехотные офицеры, и рот его, самая поразительная черта его лица, был весь виден. Линии этого рта были замечательно тонко изогнуты. В средине верхняя губа энергически опускалась на крепкую нижнюю острым клином, и в углах образовывалось постоянно что то вроде двух улыбок, по одной с каждой стороны; и всё вместе, а особенно в соединении с твердым, наглым, умным взглядом, составляло впечатление такое, что нельзя было не заметить этого лица. Долохов был небогатый человек, без всяких связей. И несмотря на то, что Анатоль проживал десятки тысяч, Долохов жил с ним и успел себя поставить так, что Анатоль и все знавшие их уважали Долохова больше, чем Анатоля. Долохов играл во все игры и почти всегда выигрывал. Сколько бы он ни пил, он никогда не терял ясности головы. И Курагин, и Долохов в то время были знаменитостями в мире повес и кутил Петербурга.
Бутылка рому была принесена; раму, не пускавшую сесть на наружный откос окна, выламывали два лакея, видимо торопившиеся и робевшие от советов и криков окружавших господ.
Анатоль с своим победительным видом подошел к окну. Ему хотелось сломать что нибудь. Он оттолкнул лакеев и потянул раму, но рама не сдавалась. Он разбил стекло.
– Ну ка ты, силач, – обратился он к Пьеру.
Пьер взялся за перекладины, потянул и с треском выворотип дубовую раму.
– Всю вон, а то подумают, что я держусь, – сказал Долохов.
– Англичанин хвастает… а?… хорошо?… – говорил Анатоль.
– Хорошо, – сказал Пьер, глядя на Долохова, который, взяв в руки бутылку рома, подходил к окну, из которого виднелся свет неба и сливавшихся на нем утренней и вечерней зари.
Долохов с бутылкой рома в руке вскочил на окно. «Слушать!»
крикнул он, стоя на подоконнике и обращаясь в комнату. Все замолчали.
– Я держу пари (он говорил по французски, чтоб его понял англичанин, и говорил не слишком хорошо на этом языке). Держу пари на пятьдесят империалов, хотите на сто? – прибавил он, обращаясь к англичанину.
– Нет, пятьдесят, – сказал англичанин.
– Хорошо, на пятьдесят империалов, – что я выпью бутылку рома всю, не отнимая ото рта, выпью, сидя за окном, вот на этом месте (он нагнулся и показал покатый выступ стены за окном) и не держась ни за что… Так?…
– Очень хорошо, – сказал англичанин.
Анатоль повернулся к англичанину и, взяв его за пуговицу фрака и сверху глядя на него (англичанин был мал ростом), начал по английски повторять ему условия пари.
– Постой! – закричал Долохов, стуча бутылкой по окну, чтоб обратить на себя внимание. – Постой, Курагин; слушайте. Если кто сделает то же, то я плачу сто империалов. Понимаете?
Англичанин кивнул головой, не давая никак разуметь, намерен ли он или нет принять это новое пари. Анатоль не отпускал англичанина и, несмотря на то что тот, кивая, давал знать что он всё понял, Анатоль переводил ему слова Долохова по английски. Молодой худощавый мальчик, лейб гусар, проигравшийся в этот вечер, взлез на окно, высунулся и посмотрел вниз.
– У!… у!… у!… – проговорил он, глядя за окно на камень тротуара.
– Смирно! – закричал Долохов и сдернул с окна офицера, который, запутавшись шпорами, неловко спрыгнул в комнату.
Поставив бутылку на подоконник, чтобы было удобно достать ее, Долохов осторожно и тихо полез в окно. Спустив ноги и расперевшись обеими руками в края окна, он примерился, уселся, опустил руки, подвинулся направо, налево и достал бутылку. Анатоль принес две свечки и поставил их на подоконник, хотя было уже совсем светло. Спина Долохова в белой рубашке и курчавая голова его были освещены с обеих сторон. Все столпились у окна. Англичанин стоял впереди. Пьер улыбался и ничего не говорил. Один из присутствующих, постарше других, с испуганным и сердитым лицом, вдруг продвинулся вперед и хотел схватить Долохова за рубашку.
– Господа, это глупости; он убьется до смерти, – сказал этот более благоразумный человек.
Анатоль остановил его:
– Не трогай, ты его испугаешь, он убьется. А?… Что тогда?… А?…
Долохов обернулся, поправляясь и опять расперевшись руками.
– Ежели кто ко мне еще будет соваться, – сказал он, редко пропуская слова сквозь стиснутые и тонкие губы, – я того сейчас спущу вот сюда. Ну!…
Сказав «ну»!, он повернулся опять, отпустил руки, взял бутылку и поднес ко рту, закинул назад голову и вскинул кверху свободную руку для перевеса. Один из лакеев, начавший подбирать стекла, остановился в согнутом положении, не спуская глаз с окна и спины Долохова. Анатоль стоял прямо, разинув глаза. Англичанин, выпятив вперед губы, смотрел сбоку. Тот, который останавливал, убежал в угол комнаты и лег на диван лицом к стене. Пьер закрыл лицо, и слабая улыбка, забывшись, осталась на его лице, хоть оно теперь выражало ужас и страх. Все молчали. Пьер отнял от глаз руки: Долохов сидел всё в том же положении, только голова загнулась назад, так что курчавые волосы затылка прикасались к воротнику рубахи, и рука с бутылкой поднималась всё выше и выше, содрогаясь и делая усилие. Бутылка видимо опорожнялась и с тем вместе поднималась, загибая голову. «Что же это так долго?» подумал Пьер. Ему казалось, что прошло больше получаса. Вдруг Долохов сделал движение назад спиной, и рука его нервически задрожала; этого содрогания было достаточно, чтобы сдвинуть всё тело, сидевшее на покатом откосе. Он сдвинулся весь, и еще сильнее задрожали, делая усилие, рука и голова его. Одна рука поднялась, чтобы схватиться за подоконник, но опять опустилась. Пьер опять закрыл глаза и сказал себе, что никогда уж не откроет их. Вдруг он почувствовал, что всё вокруг зашевелилось. Он взглянул: Долохов стоял на подоконнике, лицо его было бледно и весело.
– Пуста!
Он кинул бутылку англичанину, который ловко поймал ее. Долохов спрыгнул с окна. От него сильно пахло ромом.
– Отлично! Молодцом! Вот так пари! Чорт вас возьми совсем! – кричали с разных сторон.
Англичанин, достав кошелек, отсчитывал деньги. Долохов хмурился и молчал. Пьер вскочил на окно.
Господа! Кто хочет со мною пари? Я то же сделаю, – вдруг крикнул он. – И пари не нужно, вот что. Вели дать бутылку. Я сделаю… вели дать.
– Пускай, пускай! – сказал Долохов, улыбаясь.
– Что ты? с ума сошел? Кто тебя пустит? У тебя и на лестнице голова кружится, – заговорили с разных сторон.
– Я выпью, давай бутылку рому! – закричал Пьер, решительным и пьяным жестом ударяя по столу, и полез в окно.
Его схватили за руки; но он был так силен, что далеко оттолкнул того, кто приблизился к нему.
– Нет, его так не уломаешь ни за что, – говорил Анатоль, – постойте, я его обману. Послушай, я с тобой держу пари, но завтра, а теперь мы все едем к***.
– Едем, – закричал Пьер, – едем!… И Мишку с собой берем…
И он ухватил медведя, и, обняв и подняв его, стал кружиться с ним по комнате.

Князь Василий исполнил обещание, данное на вечере у Анны Павловны княгине Друбецкой, просившей его о своем единственном сыне Борисе. О нем было доложено государю, и, не в пример другим, он был переведен в гвардию Семеновского полка прапорщиком. Но адъютантом или состоящим при Кутузове Борис так и не был назначен, несмотря на все хлопоты и происки Анны Михайловны. Вскоре после вечера Анны Павловны Анна Михайловна вернулась в Москву, прямо к своим богатым родственникам Ростовым, у которых она стояла в Москве и у которых с детства воспитывался и годами живал ее обожаемый Боренька, только что произведенный в армейские и тотчас же переведенный в гвардейские прапорщики. Гвардия уже вышла из Петербурга 10 го августа, и сын, оставшийся для обмундирования в Москве, должен был догнать ее по дороге в Радзивилов.
У Ростовых были именинницы Натальи, мать и меньшая дочь. С утра, не переставая, подъезжали и отъезжали цуги, подвозившие поздравителей к большому, всей Москве известному дому графини Ростовой на Поварской. Графиня с красивой старшею дочерью и гостями, не перестававшими сменять один другого, сидели в гостиной.
Графиня была женщина с восточным типом худого лица, лет сорока пяти, видимо изнуренная детьми, которых у ней было двенадцать человек. Медлительность ее движений и говора, происходившая от слабости сил, придавала ей значительный вид, внушавший уважение. Княгиня Анна Михайловна Друбецкая, как домашний человек, сидела тут же, помогая в деле принимания и занимания разговором гостей. Молодежь была в задних комнатах, не находя нужным участвовать в приеме визитов. Граф встречал и провожал гостей, приглашая всех к обеду.
«Очень, очень вам благодарен, ma chere или mon cher [моя дорогая или мой дорогой] (ma сherе или mon cher он говорил всем без исключения, без малейших оттенков как выше, так и ниже его стоявшим людям) за себя и за дорогих именинниц. Смотрите же, приезжайте обедать. Вы меня обидите, mon cher. Душевно прошу вас от всего семейства, ma chere». Эти слова с одинаковым выражением на полном веселом и чисто выбритом лице и с одинаково крепким пожатием руки и повторяемыми короткими поклонами говорил он всем без исключения и изменения. Проводив одного гостя, граф возвращался к тому или той, которые еще были в гостиной; придвинув кресла и с видом человека, любящего и умеющего пожить, молодецки расставив ноги и положив на колена руки, он значительно покачивался, предлагал догадки о погоде, советовался о здоровье, иногда на русском, иногда на очень дурном, но самоуверенном французском языке, и снова с видом усталого, но твердого в исполнении обязанности человека шел провожать, оправляя редкие седые волосы на лысине, и опять звал обедать. Иногда, возвращаясь из передней, он заходил через цветочную и официантскую в большую мраморную залу, где накрывали стол на восемьдесят кувертов, и, глядя на официантов, носивших серебро и фарфор, расставлявших столы и развертывавших камчатные скатерти, подзывал к себе Дмитрия Васильевича, дворянина, занимавшегося всеми его делами, и говорил: «Ну, ну, Митенька, смотри, чтоб всё было хорошо. Так, так, – говорил он, с удовольствием оглядывая огромный раздвинутый стол. – Главное – сервировка. То то…» И он уходил, самодовольно вздыхая, опять в гостиную.

Диалоговое окно — Википедия

Диалоговое окно (англ. dialog box) в графическом пользовательском интерфейсе — специальный элемент интерфейса, окно, предназначенное для вывода информации и (или) получения ответа от пользователя. Получил своё название потому, что осуществляет двустороннее взаимодействие компьютер-пользователь («диалог»): сообщая пользователю что-то и ожидая от него ответа.

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

Пример окна сообщения.

Простейшим типом диалогового окна является окно сообщения (англ. message box, англ. alert box), которое выводит сообщение и требует от пользователя подтвердить, что сообщение прочитано. Для этого обычно необходимо нажать кнопку OK. Окно сообщения предназначено для информирования пользователя о завершении выполнявшегося действия, вывода сообщения об ошибке и тому подобных случаев, не требующих от пользователя какого-либо выбора.

Несмотря на то, что использование окна сообщения является часто применяемым шаблоном проектирования, оно критикуется экспертами по юзабилити как неэффективное решение для поставленной задачи (защита от ошибочных действий пользователя)[1], вдобавок, при наличии лучших альтернатив[2].

Пример запроса подтверждения.

В диалоговых окнах многих программ присутствуют кнопки OK и Отмена (Cancel), нажимая первую из которых, пользователь выражает своё согласие с тем, что в этот момент отображает диалоговое окно, и тем самым закрывает его, приводя в действие сделанные в нём изменения, а вторая — закрывает окно без применения. Существуют варианты с единственной кнопкой ОК — в информирующих окнах, не подразумевающих каких-либо изменений, и с кнопками ОК, Применить (Apply) и Закрыть (Close), в окнах, результаты изменений в которых пользователь, по мнению автора программы, может оценить, не закрывая окна, и в случае неудовлетворительного результата продолжить внесение изменений.

Также хорошим тоном считается обеспечить в диалоговых окнах справочную систему — обычно это реализуется либо в виде кнопки Справка (Help), открывающей страницу документации, описывающую работу в этом диалоговом окне, либо (в Windows) с помощью кнопки со знаком вопрос в заголовке окна, нажав на которую, пользователь переключает мышь в режим одноразовой контекстной подсказки: нажатие мышью в этом режиме на элемент диалогового окна вызывает отображение описания этого элемента.

Немодальные (англ. modeless) диалоговые окна используются в случаях, когда выводимая в окне информация не является существенной для дальнейшей работы системы. Поэтому окно может оставаться открытым, в то время как работа пользователя с системой продолжается. Разновидностью немодального окна является панель инструментов или окно-«палитра», если она отсоединена или может быть отсоединена от главного окна приложения, так как элементы управления, расположенные на ней, могут использоваться параллельно с работой приложения. Впрочем, такие окна редко называют «диалоговыми».

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

Модальным называется окно, которое блокирует работу пользователя с родительским приложением до тех пор, пока пользователь это окно не закроет. Диалоговые окна преимущественно реализованы модальными.

Например, модальными являются диалоговые окна настроек приложения — так как проще реализовать режим, когда все сделанные изменения настроек применяются или отменяются одномоментно, и с момента, когда пользователь решил изменить настройки приложения и открыл диалог настроек, и до момента, когда он новые настройки вводит в силу или отказывается от них, приложение ожидает решения пользователя.

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

Специалисты по юзабилити считают модальные окна запросов подтверждений плохими дизайнерскими решениями, так как они могут приводить пользователя к, так называемым, «ошибкам режима программы». Опасные действия должны иметь возможность отмены везде, где это возможно, а модальные окна запросов подтверждений, пугающие пользователя своим неожиданным появлением, через некоторое время пропускаются им автоматически (так как он привык к ним) и, поэтому, не защищают от опасных действий[3].

Для смягчения недостатков модальных диалоговых окон (блокирование доступа к приложению, или, даже, к системе в целом) была предложена концепция модальности на уровне окна (или документа). Такой тип диалогового окна введён, например, в Mac OS X, где он называется «диалоговое модальное окно для документа» (англ. document modal sheet).

При появлении диалогового окна подобного типа работа с остальными окнами приложения не блокируется. Поскольку окно диалога не перекрывает родительское окно, а прикрепляется к нему, остаётся возможность изменять размеры и положение и самого родительского окна. При этом, естественно, содержимое родительского окна остаётся недоступным до закрытия модального диалогового окна.

Окно (информатика) — Википедия (с комментариями)

Ты — не раб!
Закрытый образовательный курс для детей элиты: «Истинное обустройство мира».
http://noslave.org

Материал из Википедии — свободной энциклопедии

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

История

Впервые концепцию перекрывающихся окон, как и многие другие концепции пользовательских интерфейсов, разработали в исследовательском центре Xerox PARC для системы Xerox Alto, а точнее для среды разработки языка smalltalk в 1974 году[1][2]. В этой среде у окон уже были границы и заголовки, но ещё не появилось кнопок управления окнами. Дальнейшее развитие оконный интерфейс получил в среде Xerox Star, но первым коммерчески успешным компьютером, использующим окна стал вышедший в 1984 году Apple Macintosh.

Основные части окна

  • содержимое окна;
  • рамка окна — отделяет содержимое одного окна от другого, лежащего ниже. Кроме того, в современных оконных менеджерах рамка окна позволяет изменять размер окна, путём перетаскивания границы окна, либо угла. Для компактности и уменьшения визуального шума может быть заменена тенью от окна;
  • уголок изменения размеров — располагается в правом нижнем углу окна и предоставляет дополнительную площадь для изменения размеров окна (см. закон Фиттса). Присутствует не во всех окнах;
  • Заголовок окна — располагается обычно в верхней части окна и содержит название окна, а также кнопки управления окном. Если окно не поддерживает свободного перетаскивания, именно заголовок является областью, позволяющей перетаскивать окно. Иногда название окна может скрываться, а в заголовок выводиться другие элементы управления, такие как вкладки браузера;
  • Кнопки управления окном — начиная с Windows 95, типичным является следующий набор кнопок:
    • меню окна — одновременно является значком приложения. Располагается в левой части заголовка;
    • свернуть ( _ ) — в ранних ОС превращала окно приложения в значок на рабочем столе, в более новых — скрывает окно, оставляя кнопку на панели задач;
    • развернуть ( □ ) — позволяет развернуть окно на весь экран, или переключить приложение в полноэкранный режим;
    • закрыть ( × ) — позволяет завершить работу с приложением, либо закрыть конкретное окно. Символ «×» для закрытия окна впервые появился в системе Atari TOS в 1985, позже — независимо от неё в NeXTSTEP, но широкое распространение получил с выходом Windows 95[3].

В некоторых системах, например в OS X, кнопки управления окном располагаются слева. Кроме того, в OS X до версии 10.7 отсутствовала кнопка полноэкранного режима.

Особенности поведения окон

Перемещение окон

При использовании оконного интерфейса, большинство окон может свободно перемещаться по экрану. Обычно перемещение окон производится при захвате заголовка окна, однако при необходимости можно задать для перемещения также произвольную область, либо всё окно, кроме располагающихся на нём элементов интерфейса. Также перемещать окна можно, выбрав пункт в меню окна — в этом случае возможность перемещать окно доступна также с клавиатуры.

Появление новых окон обычно не регламентируется системой, и они занимают место посередине экрана, либо заданное при разработке программы. Некоторые оконные менеджеры, например входящие в состав среды KDE, располагают вновь открывающиеся диалоговые окна и окна предупреждений так, чтобы они не перекрывали уже открытые. Другой способ — располагать вновь открытые диалоговые окна «каскадом», то есть с небольшим смещением от предыдущего, чтобы оставался виден заголовок окна.

При перемещении окон может использоваться эффект «прилипания». Возле границы такого окна появляется область, и если в этой области находится граница другого окна, перемещаемое окно становится вплотную к другому, и остаётся неподвижным до тех пор, пока пользователь, перемещая курсор, не попытается вывести окно за пределы этой области. Примером такого подхода может служить проигрыватель Winamp, в котором эффект прилипания реализует ещё одну функцию: дочерние окна программы после прилипания к главному окну могут перемещаться вместе с ним как одно окно. Слипшиеся друг с другом дочерние окна того же плеера такого эффекта не имеют.

Управление размером окон

Обычно, изменить размер окна можно тремя способами — через меню окна (в этом случае изменение размеров возможно с клавиатуры), путём перемещения границ окна либо специальной области в правом нижнем углу окна.

При уменьшении размеров окна могут стать недоступными некоторые важные элементы управления. Чтобы этого избежать, задаётся минимальный размер окна. Если элементов управления слишком много, либо при уменьшении окна они либо попадают в специальное меню, либо в окне появляются полосы прокрутки. Некоторые окна не позволяют изменять размер, среди них — большинство диалоговых окон.

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

Полноэкранный режим

В ОС семейства Windows большинство оконных приложений может использовать «псевдополноэкранный режим». При нажатии на кнопку «развернуть», окно занимает всю доступную площадь экрана, кроме панели задач. При этом все элементы окна, кроме рамки, остаются. Для некоторых видов приложений, например, воспроизводящих видео, такой режим неприемлем, и такие приложения обычно закрывают экран полностью, не отображая в таком режиме большинства элементов управления, либо отображая упрощённую их версию. Похожий режим доступен в операционной системе OS X, начиная с версии 10.7 «Lion».

Скрытие окна

В большинстве современных операционных систем и оконных менеджеров в окнах присутствует кнопка «свернуть». При нажатии на эту кнопку окно приложения скрывается, но само приложение не прекращает работу. В разных операционных системах поведение этой кнопки по умолчанию может различаться. В системах, имеющих панель задач, окно приложения можно вызвать нажатием на кнопку приложения на панели задач. При отсутствии панели задач, свёрнутое окно либо уменьшается до одного заголовка, либо на рабочем столе (в старых версиях Windows — в окне диспетчера программ) появляется значок, и раскрыть окно можно нажатием на него. То же самое работает и для дочерних окон приложения, которые не отображаются в панели задач, но имеют кнопку «свернуть».

Закрытие окна

Для главного окна приложения закрытие окна обычно предполагает выход из приложения, либо документа (при использовании многодокументного интерфейса). Некоторые приложения, например Skype, не завершают работу при нажатии на кнопку «закрыть», а имеют для этой цели специальную функцию в меню приложения. Кнопка «закрыть» в них работает почти так же, как кнопка «свернуть».

Для дочерних окон приложения закрытие, как правило, означает лишь его скрытие, без выгрузки из памяти каких-либо данных. Такие окна обычно можно вернуть из меню приложения, либо какими-то элементами управления в главном окне.

В диалоговых окнах закрытие окна обычно работает аналогично нажатию на кнопку «отмена». Некоторые окна могут блокировать возможность закрытия, например, если выполняется действие, для отмены которого нужно выполнить какие-то другие операции. Также, при работе с документами, при отсутствии функции автосохранения документов, применяется режим, когда при нажатии на кнопку закрытия появляется диалог, предлагающий сохранить внесённые изменения. При использовании таких утилит резервного копирования, как Time Machine, подобные диалоги считаются антипаттернами.

Наложение окон

В большинстве случаев, окна перекрывают друг друга так, что активное в текущий момент окно располагается поверх остальных, за ним идёт окно, которое было активно предыдущим, и так далее. Однако, для некоторых окон можно включить режим «поверх всех окон», при котором окно не может быть перекрыто другими, даже если оно неактивно. В некоторых оконных менеджерах, например Openbox, возможность расположить окно поверх остальных доступна из меню окна, а также есть возможность вывести кнопку с этой функцией рядом со стандартными кнопками управления окном.

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

Разновидности окон

Диалоговые окна

Файл:Dialog1.png

диалог, запрашивающий сохранение при закрытии файла

Диалоговые окна обычно не являются главными окнами приложения, не отображаются в панели задач и не могут быть развёрнуты на весь экран, а часто даже не позволяют изменять размер окна. Диалоговое окно должно быть закрыто после выполнения действия или прочтения сообщения, для этого в диалоговом окне имеются кнопки, нажатие на которые приводит к закрытию окна. Поэтому диалоговое окно не нуждается также в кнопке «закрыть». Особняком стоит OS X, где диалоги в большинстве случаев являются не окнами, а специальными элементами управления, которые появляются из-под заголовка родительского окна.

Модальное окно

Модальное окно — окно, обычно диалоговое, открытие которого блокирует доступ к элементам родительского окна.

Панели, палитры и плавающие окна

Панели, палитры и плавающие окна, как правило, располагаются поверх основного окна приложения или окна документа, даже если в нём фокус ввода. При использовании MDI, либо многооконного интерфейса, панели, как правило, остаются общими для всех документов. Обычно, панели и палитры имеют упрощённый вид окна с уменьшенным заголовком и без кнопок «развернуть» и «свернуть». При использовании технологии Drag and Dock, панель, если её подвести к краю окна, превращается в панель инструментов.

Окна документов в многодокументных приложениях

В многодокументных приложениях поведение окон зависит от того, какая разновидность многодокументного интерфейса используется.

В SDI окно документа по сути является главным окном приложения. Если документов несколько, все окна приложения равнозначны. Выход из приложения происходит при закрытии всех окон приложения. Переключение между окнами приложения происходит так же, как и переключение между приложениями: например, через панель задач.

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

MDI предполагает существование основного окна приложения и окон документов, располагающихся внутри основного окна. Закрытие всех окон документов не приводит к выходу из программы — в этом случае лишь отображается пустая область для окон. Если окно документа развёрнуто, оно теряет заголовок и рамку, а кнопки управления окном и значок приложения переносится в строку меню. Если окно свёрнуто, оно ведёт себя так же, как обычное окно при отсутствии панели задач. Если открыто несколько окон документов, и они развёрнуты на весь экран, переключение между ними происходит через пункт «окно» в строке меню.

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

  • SDI Inkscape.png

    Inkscape в режиме SDI. У каждого окна документа есть панели инструментов

  • GIMP screenshot.png

    GIMP со вкладками. В каждой вкладке — уменьшенное изображение документа

  • Ошибка создания миниатюры: Файл не найден

    Qt Designer в режиме MDI. Правый край окна документа вылез за пределы области MDI — видна полоса прокрутки

  • Linux screenshot2.png

    GIMP в многооконном режиме. Слева, справа и снизу от окна документа — плавающие окна

Стилизованные окна

Файл:Qmmp.png Проигрыватель QMMP использует окна, внешний вид и поведение некоторых элементов управления в которых отличается от стандартного интерфейса

Некоторые программы, такие как медиаплееры могут использовать стилизованные окна, самостоятельно управляющие отображением и поведением всех элементов управления. Такие программы часто позволяют использовать настраиваемый по желанию пользователя внешний вид. Часто в таких программах привычные элементы управления имеют несколько другое назначение, либо располагаются в другом месте. Например, в проигрывателе Winamp, и других, использующих тот же интерфейс обложек, кнопка между «закрыть» и «свернуть» не разворачивает плеер на весь экран, а уменьшает его окно до размера заголовка, при этом некоторые виджеты переносятся в заголовок, позволяя управлять плеером в минимизированном состоянии.

Альтернативы

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

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

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

Напишите отзыв о статье «Окно (информатика)»

Примечания

  1. [http://toastytech.com/guis/alto3.html The Xerox Alto]
  2. [http://arstechnica.com/features/2005/05/gui/3/ A History of the GUI | Ars Technica]
  3. Лорен Арчер. [https://habrahabr.ru/company/web_payment_ru/blog/233461/ С чего началось использование [x] в дизайне графических интерфейсов] = [https://medium.com/re-form/x-to-close-417936dfc0dc X to Close. The origins of the use of [x] in UI design.].</span>
  4. </ol>

Литература

  • Алан Купер. об интерфейсе. Основы проектирования = About Face. The Essentials of Interaction Design. — 3. — СПб: Символ-Плюс, 2009. — С. 476-493. — 688 с. — 1500 экз. — ISBN 978 5 93286 132 5.
  • [https://developer.apple.com/library/mac/documentation/UserExperience/Conceptual/OSXHIGuidelines/WindowAppearanceBehavior.html#//apple_ref/doc/uid/20000957-Ch43-SW1 Windows] — OS X Human Interface Guidelines

Отрывок, характеризующий Окно (информатика)


Как оказалось, не только моя мама была в ужасе от содеянного мною. Соседние мамы, услышав от своих детей о том, что произошло, начали требовать от них чтобы они держались от меня как можно дальше… И на этот раз я по-настоящему осталась почти совсем одна. Но так как я была человечком весьма и весьма гордым, то я ни за что не собиралась «проситься» к кому-то в друзья. Но одно – показать, а совсем другое – с этим жить…..
Я очень любила своих друзей, свою улицу и всех кто на ней жил. И всегда старалась принести каждому хоть какую-то радость и какое-то добро. А сейчас я была одна и в этом была виновата только сама, потому что не сумела устоять перед самой простой, безобидной детской провокацией. Но что ж было делать, если я сама в то время была ещё совсем ребёнком? Правда, ребёнком, который теперь стал уже понемногу понимать, что не каждый в этом мире достоин того, чтобы ему стоило бы что-то доказывать… А даже если и доказать, то это ещё абсолютно не значило, что тот, кому ты это доказываешь, тебя всегда правильно поймёт.
Через несколько дней я совсем физически «отошла» и чувствовала себя довольно сносно. Но желания зажечь огонь у меня больше не появлялось уже никогда. А вот расплачиваться за свой «эксперимент» пришлось, к сожалению, довольно долго… Первое время я находилась в полной изоляции от всех моих любимых игр и друзей. Это было очень обидно и казалось очень несправедливым. Когда я говорила об этом маме, моя бедная добрая мама не знала, что сказать. Она очень меня любила и, естественно, хотела уберечь меня от любых бед и обид. Но, с другой стороны, ей уже тоже понемножку становилось страшно оттого, что почти постоянно со мной происходило.
Это, к сожалению, было то «тёмное» время, когда ещё было «не принято» говорить открыто о подобных, «странных» и непривычных вещах. Всё очень строго сохранялось в рамках, как «должно» или «не должно» быть. И всё «необъяснимое» или «неординарное» категорически умалчивалось или считалось ненормальным. Честно говоря, я от всего сердца завидую тем одарённым детям, которые родились хотя бы на двадцать лет позже меня, когда все эти «неординарные» способности уже не считались каким-то проклятием, а наоборот – это стало называться ДАРОМ. И на сегодняшний день никто уже не травит и не посылает этих бедных «необычных» детей в сумасшедший дом, а дорожат ими и уважают, как одарённых особым талантом удивительных детей.
Мои же «таланты» в то время такого восторга ни у кого из окружающих, к сожалению, не вызывали. Как-то, несколько дней спустя после моего «скандального» приключения с огнём, одна наша соседка «по секрету» сказала маме, что у неё есть «очень хороший врач», который занимается именно такими «проблемами», как у меня и если мама хочет, то она с удовольствием её с ним познакомит. Это был первый раз, когда маме на прямую «посоветовали» упрятать меня в сумасшедший дом.
Потом этих «советов» было очень много, но я помню, что именно тогда мама была очень огорчена и долго плакала закрывшись в своей комнате. Она не сказала мне про этот случай никогда, но в этот секрет меня «посвятил» соседский мальчик, мама которого и дала моей маме такой драгоценный совет. Конечно же, ни к какому врачу меня, слава богу, не повели. Но я чувствовала, что своими последними «деяниями» я перешагнула какой-то «рубеж», после которого уже даже моя мама не в состоянии была меня понимать. И не было никого, кто мог бы мне помочь, объяснить или просто по-дружески успокоить. Я уже не говорю – чтобы научить…
Так я в одиночестве «барахталась» в своих догадках и ошибках, без чьей-либо поддержки или понимания. Что-то пробовала, что-то не смела. Что-то получалось, что-то – наоборот. И как же часто мне бывало просто-напросто по-человечески страшно! Честно говоря, я точно также всё ещё «барахталась в догадках» и до своих 33 лет, потому, что так и не нашла никого, кто мог бы хотя бы что-либо как-то объяснить. Хотя «желающих» всегда было больше чем нужно.
Время шло. Иногда мне казалось, что всё это происходит не со мной или, что это просто придуманная мною странная сказка. Но эта сказка почему-то была слишком уж реальной реальностью… И мне приходилось с этим считаться. И, что самое главное, с этим жить. В школе всё шло, как и прежде, я получала по всем предметам только пятёрки и у моих родителей (хотя бы уж из-за этого!) не было никаких проблем. Скорее наоборот – в четвёртом классе я уже решала очень сложные задачи по алгебре и геометрии и делала это играючи, с большим удовольствием для самой себя.
Также я очень любила в то время уроки музыки и рисования. Я рисовала почти всё время и везде: на других уроках, во время перерывов, дома, на улице. На песке, на бумаге, на стёклах… В общем – везде, где это было возможно. И рисовала я поче-му-то только человеческие глаза. Мне тогда казалось, что это поможет мне найти какой-то очень важный ответ. Я всегда любила наблюдать человеческие лица и в особенности – глаза. Ведь очень часто люди не любят говорить то, что они по-настоящему думают, но их глаза говорят всё… Видимо недаром их называют зеркалом нашей души. И вот я рисовала сотни и сотни этих глаз – печальных и счастливых, скорбящих и радостных, добрых и злых. Это было для меня, опять же, время познания чего-то, очередная попытка докопаться до какой-то истины… правда я понятия не имела – до какой. Просто это было очередное время «поиска», которое и после (с разными «ответвлениями») у меня продолжалось почти всю мою сознательную жизнь.

Дни сменялись днями, проходили месяцы, а я всё продолжала удивлять (а иногда и ужасать!) своих родных и близких, и очень часто саму себя, множеством моих новых «невероятных» и не всегда совсем безопасных, приключений. Так, например, когда мне исполнилось девять лет я вдруг, по какой-то, мне неизвестной причине, перестала есть, чем очень сильно напугала маму и расстроила бабушку. Моя бабушка была настоящим первоклассным поваром! Когда она собиралась печь свои капустные пироги, на них съезжалась вся наша семья, включая маминого брата, который жил в то время в 150 километрах от нас и, несмотря на это, приезжал специально из-за бабушкиных пирогов.
Я до сих пор очень хорошо и с очень большой теплотой помню те «великие и загадочные» приготовления: пахнущее свежими дрожжами тесто, всю ночь поднимавшееся в глиняном горшке у плиты, а утром превратившееся в десятки белых кружочков, разложенных на кухонном столе и ждущее, когда же уже настанет час его чудесного превращения в пышные пахнущие пироги… И бабушка с белыми от муки руками, сосредоточенно орудующая у плиты. И ещё я помню то нетерпеливое, но весьма приятное, ожидание, пока наши «жаждущие» ноздри не улавливали первых, изумительно «вкусных», тончайших запахов пекущихся пирогов…
Это всегда был праздник, потому что её пироги любили все. И кто-бы в этот момент не заходил, ему всегда находилось место за большим и гостеприимным бабушкиным столом. Мы всегда засиживались допоздна, продлевая удовольствие за «чаепитным» столом. И даже когда наше «чаепитие» заканчивалось, никому не хотелось уходить, как будто вместе с пирогами бабушка «впекала» туда частичку своей доброй души и каждому хотелось посидеть ещё и «погреться» у её тёплого, уютного домашнего очага.
Бабушка по-настоящему любила готовить и что бы она ни делала, это было необыкновенно вкусно всегда. Это могли быть сибирские пельмени, пахнущие так, что у всех наших соседей вдруг появлялась «голодная» слюна. Или мои любимые вишнёво-творожные ватрушки, которые буквально таяли во рту, оставляя надолго изумительный вкус тёплых свежих ягод и молока… И даже её самые простые квашеные грибы, которые она каждый год квасила в дубовой кадушке со смородиновыми листьями, укропом и чесноком, были самыми вкусными которые я когда-либо ела в своей жизни, несмотря на то, что на сегодняшний день я объездила больше половины света и перепробовала всевозможные лакомства, о которых, казалось бы, можно было только мечтать. Но тех незабываемых запахов одурительно вкусного бабушкиного «искусства» никогда не смогло затмить никакое, даже самое изысканно-рафинированое заграничное блюдо.
И вот, имея такого домашнего «чародея», я, к всеобщему ужасу моей семьи, в один прекрасный день вдруг по-настоящему перестала есть. Теперь я уже не помню, был ли для этого какой-либо повод или это просто произошло по какой-то мне неизвестной причине, как это обычно происходило всегда. Я просто начисто потеряла желание к любой мне предлагаемой пище, хотя никакой слабости или головокружения при этом не испытывала, а наоборот – чувствовала себя необычайно легко и совершенно великолепно. Я пыталась объяснить всё это моей маме, но, как я поняла, она была сильно напугана моей новой очередной выходкой и ничего не хотела слышать, а только честно пыталась заставить меня что-то «глотать».
Мне становилось очень плохо и от каждой новой порции принимаемой пищи рвало. Только лишь чистая вода принималась моим истерзанным желудком с удовольствием и легко. Мама уже была почти что в панике, когда к нам совершенно случайно зашла, наш тогдашний семейный врач, моя двоюродная сестра Дана. Обрадованная её приходом, мама, конечно же, тут же рассказала ей всю нашу «ужасную» историю о моём голодании. И как же я обрадовалась, когда услышала, что «ничего такого уж страшного в этом нет» и что я могу на какое-то время быть оставлена в покое без насильственного запихивания в меня еды! Я видела, что моя заботливая мама в это совсем не поверила, но деваться было некуда, и она решила оставить меня в покое хотя бы на какое-то время.
Жизнь сразу стала лёгкой и приятной, так как чувствовала я себя абсолютно прекрасно и больше уже не было того постоянного кошмарного ожидания спазмов желудка, которые обычно сопровождали каждую малейшую попытку принятия какой-либо пищи. Это продолжалось примерно около двух недель. Все мои чувства обострились и восприятия стали намного ярче и сильнее, как бы выхватывалось что-то самое важное, а остальное уходило на второй план.
Мои сны изменились или вернее, я стала видеть один и тот же, повторяющийся сон – как-будто я вдруг поднимаюсь над землёй и иду свободно не касаясь пятками пола. Это было настолько реальное и невероятно прекрасное чувство, что каждый раз просыпаясь, мне немедленно хотелось обратно. Этот сон повторялся каждую ночь. Я до сих пор не знаю, что это было и почему. Но это продолжалось и после, спустя много, много лет. И даже теперь, перед тем, как проснуться, я очень часто вижу тот же самый сон.
Как-то, папин брат приехал в гости из города, в котором он в то время жил и во время разговора сказал папе, что недавно он видел очень хороший фильм и начал его рассказывать. Каково же было моё удивление, когда я вдруг поняла, что уже наперёд знаю, о чём он будет говорить! И хотя я совершенно точно знала, что никогда не видела этот фильм, я могла его рассказать от начала до конца со всеми подробностями… Я никому об этом не сказала, но решила понаблюдать проявится ли что-либо подобное в чём-то ещё. Ну и естественно, моё обычное «новенькое» не заставило себя долго ждать.
В то время в школе мы проходили старые античные легенды. Я была на уроке литературы и учительница сказала, что сегодня мы будем проходить «Песнь о Роланде». Вдруг, неожиданно для самой себя, я подняла руку и сказала, что могу рассказать эту песнь. Учительница очень удивилась и спросила, часто ли я читаю старые легенды. Я сказала, что не часто, но эту я знаю. Хотя, честно говоря, пока что понятия не имела – откуда?
И вот, с того же дня, я начала замечать, что всё чаще и чаще в моей памяти открываются какие-то незнакомые моменты и факты, которых я никаким образом не могла знать и с каждым днём их появляется всё больше и больше. Я немножко уставала от всего этого «наплыва» незнакомой информации, которой, по всей вероятности, для моей детской психики в то время было просто многовато. Но так как оно откуда-то приходило, то, по всей вероятности, для чего-то это было нужно. И я совершенно спокойно всё это принимала, точно так же, как всегда принимала всё незнакомое, что приносила мне моя странная и непредсказуемая судьба.
Правда, иногда вся эта информация проявлялась в весьма забавной форме – я вдруг начинала видеть очень яркие образы незнакомых мне мест и людей, как бы сама в этом принимая участие. «Нормальная» реальность исчезала и я оставалась в каком-то «закрытом» от всех остальных мире, который могла видеть лишь я одна. И вот так я могла оставаться долгое время стоя «столбом» где-нибудь посередине улицы, ничего не видя и ни на что не реагируя, пока какие-нибудь перепуганные, сердобольные «дядя или тётя» не начинали меня трясти, пытаясь как-то привести в чувство, и узнать всё ли со мной в порядке…
Несмотря на свой ранний возраст, я тогда уже (по своему горькому опыту) прекрасно понимала, что всё то, что постоянно происходит со мной, для всех «нормальных» людей, по их обычным и привычным нормам, казалось абсолютно ненормальным (хотя по поводу «нормальности» я готова была спорить с кем угодно уже тогда). Поэтому, как только кто-то в одной из этих «необычных» ситуаций пытался мне помочь, я обычно старалась как можно быстрее убедить, что у меня «совершенно всё хорошо» и что абсолютно не надо за меня волноваться. Правда, убедить мне удавалось далеко не всегда и в таких случаях это кончалось очередным звонком моей бедной, «железобетонно-терпеливой» маме, которая после звонка естественно приезжала меня забирать…
Вот такой была моя сложная и порой смешная, детская реальность, в которой я в то время жила. И так как другого выбора у меня не было, то приходилось находить своё «светлое и прекрасное» даже в том, в чём другие, думаю, не нашли бы этого никогда. Помню как-то после очередного моего необычного «происшествия», я грустно спросила бабушку:
– Почему моя жизнь такая непохожая на всех остальных?

Leave a comment