Delphi 6 -программирование



 

18.2.19. TActionManager - менеджер действий

Вместе с тремя другими компонентами страницы Additional -

TActionMainMenu.gif" >

Рис. 18.20. Редактор компонента TActionManager

  • Щелкните по окну правой кнопкой и выберите New Standard Action или просто нажмите Ctrl+Ins - на экране появится дополнительное окно с перечнем всех определенных в Delphi стандартных классов действий (рис. 18.21).
  • С помощью полосы скроллирования сместите список вверх и выберите в нем все классы, связанные с категорией File (для выбора нескольких классов одновременно щелкайте по каждому, удерживая нажатой клавишу Ctrl).
  • “Схватите” мышью категорию File и перетащите ее на полосу TActionMainMenu.gif" >

    Рис. 18.21. Окно со списком стандартных действий

    Если вы запустите программу, то увидите пустое окно с меню File и инструментальной кнопкой Exit, причем опции меню (кроме недоступной опции Run) и инструментальная кнопка выполняют ожидаемые от них действия. Щелчок по инструментальной панели активизирует уже знакомое нам (рис. 18.20) окно редактора Atcion-Manageri, и вы можете изменять состав меню и инструментальной панели.

    Свойства компонента:

    property ActionBars: TAction

    Bars;

    Содержит коллекцию всех инструменталь ных полос, определенных в приложении. Коллекция автоматически пополняется, когда на очередную полосу впервые кладется элемент меню (категория) или кнопка (действие)

    property ActionCount: Integer; 

     

    Содержит общее количество определенных в программе действий

    property Actions[Index: Integer]:

    TContainedAction;

    Открывает индексированный доступ к конкретному действию

    property FileName: TFileName; 

     

    Имя файла, в котором компонент сохраняет текущую конфигурацию действий

    property LinkedActionLists: TActionListCollection;

    Содержит коллекцию всех связанных с компонентом действий

    property Images: TCustomImageList;

    Ссылка на связанное с компонентом хранилище изображений

    property PrioritySchedule:

    TStringList;  

    Содержит для каждого действия номера сессий (запусков программы), когда связанная с действием кнопка или опция меню меняла свою видимость. Если какой-то элемент интерфейса должен постоянно присутствовать на экране, его строка PrioritySchedule должна хранить (-1)

    type TActionListState = (asNormal, asSuspended, asSuspendedEnabled) ;

    Включает или отключает действия: asNormal - все действия включены; asSuspended - все действия выключены, их свойства

    property State: TActionListState;

    Enabled не изменяются; asSuspendedE nabled - все действия выключены, их свойства Enabled получают значения True

    Если свойство FileName не определено, компонент не сможет запоминать изменения, сделанные пользователем в интерфейсе программы, и представит элементы интерфейса так, как они были определены при создании программы. Для файла нет умалчиваемого расширения, но сама среда Delphi запоминает сделанные вами изменения в файле BIN\DELPHI32 . DMT.

    Методы компонента:

    procedure LoadFromFile(const FileName: String);

    Читает файл, указанный в параметре File-Name и загружает информацию, необходимую для восстановления полос действий

    procedure LoadFromStream(Stream: TStream);

    Загружает информацию, необходимую для восстановления полос действий, из потока Stream Восстанавливает вид полосы таким, как сохраняет ее свойство DefaultActionBar Уничтожает файл, указанный в свойстве FileName

    procedure ResetActionBar(Index: Integer) ; procedure ResetUseageData;

    Сохраняет текущие настройки интерфейса в файле FileName

    procedure SaveToFile(const FileName: String) ; procedure SaveToStream(Stream: TStream);

    Сохраняет текущие настройки интерфейса в потоке Stream

    function ExecuteAction(Action: TBasicAction): Boolean; override;

    Создает событие OnExecute для выполнения действия Action

    Назад Начало Вперед



Книжный магазин