Программирование на Delphi 7

       

Условия скрытия элементов панелей действий



Таблица 8.4. Условия скрытия элементов панелей действий

Количество запусков приложения с обращением к действию

Количество запусков приложения после последнего обращения


0, 1

3

2

6

3

9

4,5

12

6-8

17

9-13

23

14-24

29

Более 25

31

Для подсчета величин, указанных в этой таблице, введены такие свойства: 

  •  у объекта 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), которое и подразумевает вызов этого диалога.



Содержание раздела