Операционная система Windows 95 для программиста
Если ваше приложение сложное и имеет большое количество параметров, следует хорошо подумать о том, как пользователь будет их настраивать. Обычно для настройки предлагается многоуровневая система вложенных меню и нагромождение диалоговых панелей, которые вызываются друг из друга, однако это совсем не то, чему обрадуется пользователь.
Если вы посмотрите, как выглядит система настройки параметров, например, в приложении Microsoft Word for Windows версии 6.0, то увидите, что она организована в виде блокнота, состоящего из нескольких диалоговых панелей с закладками (рис. 6.1). По-видимому, это наиболее удачный вариант, так как пользователь может легко найти и выбрать нужную ему группу параметров.
Блокнот настройки параметров в приложении Microsoft Word for Windows версии 6.0
Реализация блокнота средствами программного интерфейса Microsoft Windows версии 3.1 весьма непроста, однако в операционной системе Microsoft Windows 95 имеется встроенное средство, значительно облегчающее создание подобных систем настройки параметров. Это средство - органы управления Tab и Property Sheet .
Орган управления Tab выглядит как набор закладок (верхняя часть рис. 6.1). Его можно использовать отдельно (исходные тексты соответствующего приложения TABCTRL есть в SDK), однако мы ограничимся случаем, который встречается чаще - использованием его в составе органа управления Property Sheet, который мы и будем называть блокнотом.
Орган управления Property Sheet в Microsoft Windows95 выглядит немного иначе, чем блокнот, показанный на рис. 6.1. Для сравнения вы можете взглянуть на рис. 1.6, расположенный в первой главе, или на рис. 6.2 (см. ниже). Отличие заключается в том, что кнопки управления блокнотом (OK, Cancel, Help и Apply) расположены в нижней части окна блокнота.
Как работают эти кнопки?
Если нажать на кнопку OK, будут установлены новые значения параметров, после чего окно блокнота исчезнет с экрана. Как и следовало ожидать, при помощи кнопки Cancel можно отменить внесение изменений в параметры. Кнопка Help предоставляет доступ к справочной системе.
Кнопка Apply дает возможность изменить параметры и посмотреть, как отразятся эти изменения на приложении. Если нажать на эту кнопку, окно блокнота останется на экране, так что если новая комбинация параметров вас не удовлетворит, вы сможете попробовать другую. При этом вам не придется снова выбирать из меню строку, вызывающую на экран блокнот.
Теперь о волшебстве.
Конечно, наша книга не о колдовстве или магии, однако пользователи любят, когда программы самостоятельно выполняют за них всю работу или хотя бы часть работы (чем не волшебство?). Тем не менее, какая бы "умная" не была ваша программа, все же ей приходится при выполнении задач в полуавтоматическом режиме задавать пользователю вопросы или ставить его перед необходимостью выбора различных альтернатив.
И хотя Microsoft Windows95 не содержит никаких магических органов управления, способных справится с любой работой, в этой операционной системе все же есть средство, позволяющее легко организовать диалог с пользователем в процессе полуавтоматического выполнения тех или иных задач. Примером может послужить диалог при установке операционной системы Microsoft Windows95. Это средство - орган управления Wizard (в переводе это означает "колдун", однако мы воздержимся от такой терминологии).
Орган управления Wizard , так же как и блокнот, представляет собой набор диалоговых панелей (рис. 1.7, 6.6, 6.7 и 6.8). Различие заключается в том, что в блокноте пользователь имеет доступ к любой диалоговой панели, выдвигая ее на передний план при помощи закладки, а в органе управления Wizard он передвигается от одной панели к другой и обратно при помощи кнопок Back и Next. При достижении последней диалоговой панели кнопка Next заменяется на кнопку Finish. Стоит на нее нажать и... (о, чудо!) все будет сделано.
Несмотря на указанные различия, органы управления Property Sheet и Wizard очень похожи друг на друга (не по внешнему виду, а по способу создания и управления). Поэтому мы и рассмотрим их в одной главе.
Вначале займемся органом управления Property Sheet.
Создание органа управления Property SheetОбработка извещений
Посылка сообщений
Приложение Property Sheet Demo
Приложение Wizard Demo
Содержание раздела