Смекни!
smekni.com

Работа с окнами (стр. 1 из 2)

Определение окна

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

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

Что можно делать в окнах?

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

1. Редактируется текст.

2. Редактируются изображения, рисунки, фотографии и чертежи.

3. Задаются параметры работы программ.

4. Выдаются диагностические сообщения и информация о работе операционной системы.

5. Пишутся тексты программ.

6. Выполняется эмуляция интерфейса командной строки.

7. Запускаются игровые программы.

8. Работают научные, издательские и инженерные прикладные пакеты.

9. Выполняются системные процедуры.

10. Осуществляется общение через Интернет.

11. Просматривается цифровая видеопродукция.

12. и осуществляются все остальные действия, которые вообще может осуществить компьютер.

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

Специальные термины, употребляемые в описании работы многооконного интерфейса

Что такое фокус ввода?

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

Понятие фокуса ввода впервые появилось в многозадачных объектно-ориентированных операционных системах, работающих на одном процессоре. Поясним этот абзац примерами.

В операционной системе MS-DOS все ресурсы компьютера отдавались только одной программе - той, которая была запущена на исполнение. Каждый компьютер имел один процессор, на котором выполнялась одна программа. По определению "фокус ввода" всегда принадлежал выполняемой программе.

В дальнейшем появились операционные оболочки (типа Quarterdesk DeskView, Microsoft DosShell, Microsoft Windows), которые позволяли выполнять несколько программ на одном компьютере с одним процессором. Для этого использовалось квантование времени процессора, то есть каждая программа работала на процессоре строго определенное время, которое выделялось операционной оболочкой. Для того чтобы осуществить квантование времени и выделить необходимые ресурсы компьютера каждой из программ, стал использоваться объектно-ориентированный подход. При этом подходе все программы, ресурсы компьютера, подключенные к компьютеру устройства, элементы графического интерфейса рассматриваются как ОБЪЕКТЫ с определенным набором данных и манипулирующими ими процедурами. Объекты взаимодействуют между собой через сообщения (messagg e) , которые пересылаются от объекта к объекту. Любой объект, принявший сообщение, запускает указанную в сообщении процедуру, после чего формирует новое сообщение и передает его другим объектам. В этом суть объектно-ориентированного подхода.

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

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

Понятие родительского окна

Говорят, что одно окно управляется другим , если управляющее окно принимает все сообщения от операционной системы и устройств ввода - вывода и перенаправляет все эти сообщения управляемому окну. При этом управляющее окно называется родительским (parent). Управление окном используют в том случае, если управляемое окно не имеет самостоятельной роли в операционной системе и обслуживает только родительское окно.

Модальность окна

В многооконном многозадачном графическом интерфейсе существует возможность менять фокус ввода, переключаться в другие окна, одновременно работать с несколькими объектами. Однако бывают ситуация, когда по логике процесса работать с другим объектом нельзя до тех пор, пока не будет завершена обработка сообщения, не будет введен пользователем ответ на запрос программы, не будет устранена неполадка и тек далее. Поэтому, когда переход к другому окну не возможен без закрытия активного окна, такое окно называется МОДАЛЬНЫМ. Все остальные окна в графическом интерфейсе называются немодальными.

Классификация окон

Какие виды окон используются в графическом интерфейсе?

В графическом интерфейсе пользователя используются следующие окна:

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

б) Вспомогательные

в) Дочерние.

Особым видом окон автор выделяет окна сообщений операционной системы (Messagge Window).

Для чего используются перекрывающиеся окна?

Перекрывающимися окнами являются главное окно приложения, окна вывода сообщений о работе операционной системы и некоторые другие. Оно является полностью самостоятельным в управлении. Его можно в некоторых случаях распахнуть во весь экран или свернуть в икону, переключиться из него в другое приложение. Часто можно также изменять размеры этого окна. Оно не имеет родительского (parent ) окна, то есть не управляется каким-либо окном.

Как правило, перекрывающиеся окна являются главным окном приложения. В нем могут быть расположены дочерние окна (если программа поддерживает многооконный интерфейс). Из главного окна приложения запускаются вспомогательные окна. В рабочей области перекрывающегося окна однооконного приложения может редактироваться текст (редактор WordPad), изображения (Microsoft Paint) и осуществляться другие действия.


Что такое вспомогательное окно?

Рис. B.7. Вспомогательное окно

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

Как правило, у вспомогательного окна нет системного меню, увеличителя и уменьшителя , строк состояния и линий прокрутки. Зато у него есть дополнительные элементы графического интерфейса - органы управления, которыми можно менять настройки родительского приложения. Оно почти всегда имеет три кнопки: OK (Готово) , Cancel (Отмена) и Help (Помощь). Нажатие OK сохраняет все введенные изменения параметров работы приложения и закрывает окно. Кнопка Cancel закрывает приложение без изменения параметров настроек. Клавиша Help открывает окно справки с описанием работы данного окна и назначения элементов управления данного окна.

Что такое дочерние окна?

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

Рис. B.8. Перекрывающиеся и дочерние окна.

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

Окна сообщений

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

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

Эти окна могут содержать только одну кнопку: OK. Тогда эти окна просто информирует пользователя о состоянии приложения. Нажатие на эту кнопку просто закрывает окно.

Если система выдает запрос или подтверждение на указанные пользователем действия, то она обычно содержит две кнопки: OK и Cancel (Отмена), или Yes (Да) и No (Нет). Нажатие на кнопку OK (или Yes) эквивалентно положительному ответу на запрос, а нажатие клавиши Cancel (No) - отрицательному ответу.

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