Программирование в системе Windows2000, страница 2

Каждое окно имеет рамку, которая определяет форму окна. Как показано на рис. 1.1, окно с изменяемыми размерами имеет рамку, в которой предусмотрены инструменты для изменения размеров окна — ручка и кнопка закрытия окна. Если размер окна не может быть изменен, его рамка не имеет дополнительной ширины, которая требуется для окон с изменяемыми размерами.

Областьзаголовка

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

Область заголовка содержит в левом углу малую версию пиктограммы объекта, которая представляет объект, просматриваемый в настоящее время в окне. Если приложение является "инструментом" или "утилитой" (приложением, в котором объект данных не представлен визуально), как показано на рис. 1.2, пиктограмма представляет собой версию пиктограммы приложения с размерами 16x16 пикселей, а в качестве текста области заголовка используется имя приложения. Если приложение включает уточняющий текст, область заголовка должна содержать символ дефиса и уточняющий текст. Например, в программе Windows Explorer указан рассматриваемый контейнер. Если в приложении малая пиктограмма не зарегистрирована, система Windows 2000 сжимает обычную пиктограмму с размерами 32x32 пикселя. Это может привести к непредсказуемым результатам.

В приложениях, в которых используются объекты данных, например в программе Microsoft WordPad (рис. 1.3), в области заголовка применяется пиктограмма, которая представляет объект данных. Информация о том, как регистрировать пиктограммы для приложения и типов файлов данных, приведена в разделе "Системная интеграция" далее в этой главе. Текст области заголовка состоит из имени объекта данных и имени приложения. Если объект данных не имеет имени, его нужно создавать автоматически с использованием короткого обозначения, например Document. Если нецелесообразно указывать имя, предусмотренное по умолчанию, то в тексте области заголовка следует использовать метку-заполнитель (например, Untitled).

Рисунок 1.1.

Компоненты главного окна

Рисунок 1.2. Область заголовка приложения типа "инструмент" или "утилита"

Рисунок 1.3. Область заголовка с обозначением объекта Document

Кнопка

Назначение

Кнопка

Назначение

Гх|

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

Развертывает окно

Свертывает окно

 

Восстанавливает окно

Операции, выполняемыевокне

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

Активизацияокон

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

Активное окно отличается от других окон цветом области заголовка и рамки. В неактивных окнах используется цвет неактивной области заголовка и рамки. (Эти цвета могут быть установлены пользователем и являются динамическими.) В приложении можно получить информацию об этих цветах с помощью функции GetSysColor, описанной в главе 21. Когда окно становится неактивным, в приложении необходимо скрыть обозначение выбора, сделанного в окне, чтобы избежать неопределенности в отношении того, какое окно должно получить ввод с клавиатуры. Исключением из этого правила является тот этап операции перетаскивания, когда курсор находится над неактивным окном.