Рассмотрим работу с дочерними объектами менеджера действий, которые упакованы один в другой, как матрешки.

Итак, щелкнем на свойстве ActionManager на форме и посмотрим на содержимое Инспектора объектов. Внутри него мы обнаружим сразу две "матрешки" - свойство ActionBars содержит коллекцию ссылок на дочерние панели, свойство LinkedActionList может содержать дополнительный список действий, отданных "в управление" данному менеджеру - например, для централизованной установки общих свойств.

Щелкнем на свойстве ActionBars. Появится редактор панелей (рис. 8.7), а в Инспекторе объектов обратим внимание на следующее свойство объекта

ActionBars:

property Custcmizable: Boolean;

Это свойство указывает, может ли коллекция редактироваться во время выполнения.

В коллекции содержатся не сами панели, а их "заместители" - объекты типа TActionBaritem, которые на них указывают. Надпись на рисунке "1-ActionBar -> ActionTooIBar2" показывает, что первый элемент коллекции связан с панелью Асг.1опТоо1Ваг2. Вы можете добавлять и удалять элементы этой коллекции, по мере необходимости связывая их через свойство АсИопВаг с уже существующей панелью.

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

Рис. 8.7. Редактор коллекции панелей компонента TActionManager

Через Инспектор объектов вы можете изменять внешний вид объектов типа TActionBaritem и соответствующих им панелей.

Свойство

property Color: TColor;

отвечает за фоновый цвет панели. Если вам изменения цвета недостаточно, в качестве фона выберите картинку

property Background: TPicture;

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

property BackgroundLayout: TBackgroimdLayout;
TBackgroundLayout = (blNormal, blStretch, blTile, blLeftBanner, blPdghtBanner) ;

Помимо внешнего вида можно разрешить/запретить перетаскивание панелей и их дочерних элементов. Обратимся к свойству

property ChangesAllowed: TIliangesMlcwedSet;
TChangesAllowed = {caModify, caMove, caDelete);
TIlmigesMlcwedSet = set of TChangesAl lowed;

Множество из трех возможных значений позволяет запретить те или иные нежелательные изменения для дочерних элементов панели. Если в него не включен режим caDelete, то элемент нельзя убирать (перетаскивать) с панели. Если нет режима caMove - нельзя передвигать внутри панели. Наконец, отсутствие режима caModify означает запрет на изменение визуальных свойств (заголовка и т. п.).

Внутри коллекции TActionBaritem спрятаны еще две "матрешки" - свойства items и Contextitems. Оба свойства представляют из себя коллекции объектов, указывающих на действия (класс коллекции TActionCiients, класс элемента коллекции TActionCiientitem). Первое свойство указывает непосредственно на дочерние действия, второе - на действия, которые будут показаны в качестве всплывающего меню при нажатии правой кнопки мыши.

У коллекции TActionCiients есть заслуживающие особого упоминания свойства.

Свойство

property CaptionOptions: TCaptionCptions;
TEaptionCptions = (cdSfone, coSelective, coAll) ;

задает показ/отсутствие заголовков дочерних действий. В случае установки в coNone они не показываются, coAll - показываются все, coSelective - показываются в соответствии со значением showcaption дочернего объекта TActionCiientitem. Это свойство можно также установить на первой странице редактора менеджера действий в одноименном выпадающем списке.


⇐ Предыдущая страница| |Следующая страница ⇒

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



Новости за месяц

  • Август
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс