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

Открытиеизакрытиеокон

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

Таблица 1.2. Действиясуже отмытымиокнами

Типфайла

Действие

Документ или файл данных

Активизировать существующее окно объекта и отобразить его в        ( верхней части Z-порядка окон (порядка, в котором окна располагаются одно над другим в виде стека).

Файл приложения

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

Файл документа, который уже открыт

Активизировать существующее окно файла. Его родительское окно MDI устанавливается над всеми окнами Z-порядка окон приложения MDI и файл появляется в верхнем положении Z-порядка в родительском окне MDI.

Файл документа еще не открыт, однако связан с выполняющимся приложением   MDI

Создать новое дочернее окно MDI для соответствующего файла, поместить его в верхнее положение в Z-порядке в родительском окне MDI и поместить в верхнее положение в Z-порядке родительское окно MDI.

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

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

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

После выбора команды Move пользователь может перемещать окно с помощью клавиатуры, используя клавиши со стрелками и нажимая клавишу Enter для окончания перемещения и подтверждения нового положения окна. Нажатие клавиши Esc приводит к отмене операций перемещения и возвращению окна в предыдущее положение. Приложение не должно разрешать пользователю перемещать окно в то место, где к нему нельзя получить доступ.

Изменениеразмеровокон