Панель инструментов и строка состояния
5.5. ПАНЕЛЬ ИНСТРУМЕНТОВ И СТРОКА СОСТОЯНИЯ
Панель инструментов (Toolbar) и строка состояния (Status Bar) — это специальные компоненты пользовательского интерфейса, предназначенные для создания функционально-ориентированных наборов элементов управления. Панель инструментов содержит, как правило, элементы управления, обеспечивающие быстрый доступ к наиболее часто используемым командам или свойствам объектов. Различают несколько типов панелей инструментов, ориентированных на применение в специфических приложениях. Такие специализированные панели иногда имеют собственные названия (рис. 5.31).
Рис. 5.31. Примеры панелей инструментов
Строка состояния — это специальная область внутри первичного окна (обычно в нижней его части), предназначенная для вывода информации о текущем состоянии объектов или процессов, представленных в окне, а также любой другой контекстной информации, например, о состоянии клавиатуры (рис. 5.32). Вы можете также использовать строку состояния, чтобы обеспечить вывод справочных сообщений о выбранном пункте меню или кнопке панели инструментов. Подобно панели инструментов, строка состояния может содержать элементы управления; тем не менее, рекомендуется включать в нее информацию «только для чтения» или не интерактивные элементы.
Доступ к элементам управления, включенным в панель инструментов или строку состояния, реализуется либо с помощью мыши, либо через другие стандартные средства взаимодействия с этими элементами. Может быть также реализовано клавиатурное взаимодействие, основанное на использовании горячих клавиш или клавиш доступа. Если элемент панели инструментов или строки состояния не имеет текстовой метки, средства клавиатурного доступа для него оказываются неэффективными. Кроме того, если какая-либо клавиша доступа уже используется в первичном окне, она не может применяться для работы с панелью инструментов. Например, если полоса меню первичного окна уже использует некоторую клавишу доступа, то все события, связанные с этой клавишей, будут обрабатываться применительно к полосе меню.
Рис. 5.32. Варианты реализации строки состояния
Когда пользователь взаимодействует с элементом управления, расположенном на панели инструментов или в строке состояния, любое изменение непосредственно относится к текущему выбору (например, если кнопка панели инструментов предназначена для изменения начертания шрифта в тексте, то при нажатии этой кнопки текст немедленно изменяется); никакое дополнительное подтверждение не требуется. Единственное исключение составляет случай, когда использование элемента управления (например, кнопки), требует от пользователя ввода дополнительной информации; соответствующая операция не может быть реализована, пока пользователь не введет требуемую информацию. Примером такого исключения является выбор объекта или установка значения параметра с помощью диалоговой панели.
Для тех элементов панели инструментов или строки состояния, которые не имеют текстовой метки, обязательно должна использоваться всплывающая подсказка. Система поддерживает создание всплывающей подсказки для элементов стандартной панели инструментов.
С целью обеспечения максимальной гибкости в работе пользователей панели инструментов и строки состояния должны допускать индивидуальную настройку. Простейший вариант такой настройки — возможность скрыть (не отображать) эти элементы интерфейса. В более сложных приложениях пользователю предоставляется право изменять или перестраивать элементы, включенные в панели инструментов или строки состояния.
Рекомендуемые материалы
Рекомендуется также обеспечивать возможность отображения каждой кнопки на панели инструментов по крайней мере двух размеров: 24 на 22 и 32 на 30 пикселов. Если для обозначения кнопок используются графические метки, они должны иметь размеры не более чем 16 на 16 и 24 на 24 пикселов соответственно.
Продумайте также возможность создания перемещаемой пользователем панели инструментов. Хотя панель инструментов по умолчанию отображается как пристыкованная к определенному краю окна или панели, в которых она используется, разрешите пользователю перемещать ее к другому краю или отображать в виде окна палитры (рис. 5.33).
Рис. 5.33. Перемещаемая панель инструментов
Для перемещения панели инструментов необходимо установить указатель на любом свободном участке панели и, нажав ЛКМ, перетащить ее на новое место. Если новая позиция находится в пределах горячей зоны края окна, приложение должно автоматически пристыковать панель к краю окна (после того, как пользователь отпустит кнопку мыши). Если же новая позиция находится вне горячей зоны края окна, панель инструментов преобразуется в окно палитры. Чтобы вновь пристыковать панель к краю окна, пользователь должен установить указатель на полосе заголовка окна палитры и, нажав ЛКМ, перемещать это окно, пока указатель не окажется в горячей зоне; когда пользователь отпустит кнопку мыши, панель инструментов отображается в пристыкованном состоянии.
Во время перемещения панели инструментов обеспечьте визуальную обратную связь, отобразив, например, перемещение контура панели инструментов. Когда указатель входит в горячую зону окна, измените соответствующим образом контур панели инструментов, чтобы пользователь мог визуально контролировать операцию (рис. 5.34).
Рис. 5.34. Визуализация перемещения панели инструментов
Вы можете также поддержать для панели инструментов настройку пользователем других параметров, таких например, как изменение размеров панели инструментов, стыковку нескольких панелей, размещение их в требуемом порядке и т.п.
Не рекомендуется включать в состав панели инструментов и строки состояния элементы, к которым пользователь не может получить доступ другим путем. Кроме того, всегда сохраняйте текущую позицию, размер и другую информация о панели инструментов и строке состояния, с тем чтобы они могли быть восстановлены в прежнем виде, когда пользователь вновь открывает окно приложения.
Для строки состояния поддерживается также возможность включения в нее регулятора для калибровки размера окна, описанного в главе 4. При реализации этой возможности следует иметь в виду следующее.
Нельзя одновременно отображать регулятор в двух позициях: в строке состояния и на пересечении полос прокрутки окна (в его стандартной позиции). Когда на экране отображается строка состояния, содержащая регулятор, то из стандартной позиции он должен быть убран; если же пользователь убирает строку состояния, восстановите регулятор на стандартной позиции.
СТАНДАРТНЫЕ КНОПКИ ПАНЕЛИ ИНСТРУМЕНТОВ
Табл. 5.6 иллюстрирует стандартные форматы кнопок «общего назначения» которые могут быть использованы в любом приложении.
Таблица 5.7.
Форматы стандартных кнопок панели инструментов
Формат 16х16 | Формат 24х24 | Функция |
Создать (New) | ||
Открыть (Open) | ||
Сохранить (Save) | ||
Печать (Print) | ||
Предварительный просмотр (Print Preview) | ||
Отменить (Undo) | ||
Повторить (Redo) | ||
Вырезать (Cut) | ||
Вставить (Paste) | ||
Копировать (Copy) | ||
Удалить (Delete) | ||
Найти (Find) | ||
Заменить (Replace) | ||
Полужирный [курсив] (Bold) | ||
Курсив(Italic) | ||
Подчёркнутый [шрифт] (Underline) | ||
Свойства (Properties) | ||
Что Это? [режим контекстно-зависимой подсказки] (What’s This) | ||
Открыть родительскую папку (Open parent folder) | ||
Отобразить как крупные пиктограммы (View as large icons) | ||
Отобразить как мелкие пиктограммы (View as small icons) | ||
Отобразить в виде списка (View as list) | ||
Глобальные связи на основе выделенных линий - лекция, которая пользуется популярностью у тех, кто читал эту лекцию. | Отобразить в виде таблицы (View as details) | |
Выделить (выбрать) область (Region selection tool) |
Применяйте приведенные выше изображения только для обозначения описанных функций. Последовательность в их использовании позволяет пользователю применять знания и навыки, полученные при работе с одним программным продуктом, в любом другом. Если же одна из стандартных пиктограмм используется для обозначения другой функции, это может сбить пользователя. Разрабатывая собственные кнопки для панели инструментов, следуйте стандартным системным соглашениям, рассмотренным ранее.