|
Изменение и настройка внешнего вида панелей
Мы подошли к совсем новому свойству
панелей — TActionMainMenuBar.
Теперь — как в Microsoft Office — возможно прятать редко
используемые пункты меню. В самом деле, интерфейс программ
подчас настолько сложен, что используют его на 100%
минимальное количество пользователей. Поэтому элементы
интерфейса, которые пользователь не задействовал в каком-то
числе предыдущих запусков, автоматически прячутся.
Что и когда прятать, определяется свойством
property PrioritySchedule:
TStringList;
значение которого по умолчанию приведено
в табл. 8.4. В левой колонке содержится общее количество
запусков приложения, в течение которых пользователь
применял данное действие; в правой колонке — число запусков,
прошедших со времени последнего его использования. По
истечении этого числа запусков клиенты действия маскируются.
Например, в меню они доступны не сразу, а после нажатия
специального пункта с двумя стрелочками, обращенными
вниз.
Естественно, чем чаще пользователь
обращался к действию, тем дольше оно удержится на виду.
Впрочем, если у вас другие взгляды на интерфейс, вы
можете изменить значение priorityScedule.
Таблица 8.4. Условия
скрытия элементов панелей действий
Количество запусков приложения
с обращением к действию
|
Количество запусков приложения
после последнего обращения
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Для подсчета величин, указанных в этой
таблице, введены такие свойства:
- у объекта TActionBars (дочерний
объект TActionManager) есть свойство
property SessionCount:
Integer;
которое представляет собой глобальный
счетчик запусков приложения;
- у каждого объекта TActionclientitem
есть два свойства:
- property LastSession: Integer;
в этом свойстве хранится номер последнего
запуска приложения, в течение которого использовался
данный элемент (нумерация совпадает сSessionCount);
- property UsageCount: Integer;
счетчик использования элемента.
Но для того, чтобы оперировать данными
о количестве запусков, их надо где-то хранить. Организована
система хранения следующим образом. У самого менеджера
действий есть свойство
property FileName:
TFileName;
которое указывает на файл, содержащий
все настройки панелей, связанных с данным менеджером.
Он имеет формат двоичной формы и считывается/записывается
при запуске и выходе из приложения. Впрочем, можно это
сделать и в любой момент при помощи методов
LoadFormFile и SaveToFile.
Все эти величины меняются автоматически,
и их описание приведено для понимания сути происходящего.
Сбросить же счетчик статистики запусков можно следующим
образом: на этапе разработки на странице Options
редактора свойств менеджера действий есть кнопка
Reset Usage Count. На этапе выполнения точно
такая кнопка есть в диалоге TCustomizeDlg.
Помимо данных для подсчета запусков
в этом файле хранится и вся прочая информация о настройках.
Последний из не упоминавшихся нами компонентов — диалог
настройки TCustomizeDlg. Он представляет
собой точную копию редактора свойств TActionManager,
но позволяет делать все операции с действиями в режиме
выполнения. Вызвать его просто — вызовом метода show.
А можно поступить еще проще — есть стандартное действие
Customize (категория Tools),
которое и подразумевает вызов этого диалога.
|