Действия (Actions) и связанные с ними компоненты
ГЛАВА 8. Действия (Actions) и связанные с ними компоненты
🕛 14.11.2006, 17:07
С давних пор повелось, что стандарты на пользовательский интерфейс Windows-приложений Microsoft задает "явочным порядком". Первая громкая история на эту тему связана с появлением в 1994 г. Excel 2.0 for Windows, когда разработчики из Редмонда впервые применили интерфейс со многими документами (впоследствии широко известный как MDI) и даже не подумали задокументировать и опубликовать его. После справедливого возмущения широких кругов программистской общественности Microsoft исправился и теперь новые возможности интерфейса публикуются если не до выхода продукта, то, по крайней мере, ненамного позже. Вспомним, с Internet Explorer появилась панель CoolBar и кнопки, картинки, которые подсвечивались при прохождении над ними курсора мыши. Большинство же новинок связано с флагманским продуктом Microsoft - Office. Одна из них - весьма, кстати, полезная - это система настраиваемых пользователем меню и панелей инструментов. В Delphi 7 разработчику предоставляется доступ к аналогичным возможностям. Правда, для работы с ними придется забыть "старый" интерфейс - компоненты TMainMenu, TToolBar - и полностью переучиться. Теперь "продвинутый" интерфейс состоит из новых компонентов TActionManager, TActionMainMenuBar, TActionToolBar и примкнувшего к ним TCustomizeDlg (страница Палитры компонентов Additional). Для читателя уже знакомого с действиями (Actions) названия этих компонентов покажутся знакомыми. Действительно, это - гибриды прежнего TActionList и панелей инструментов, плюс новые свойства и методы, плюс большое число полезных стандартных действий.
Данная глава посвящена рассмотрению принципов их использования. Сначала поговорим о понятии действия (Action) и рассмотрим компонент TActionList, который является кроссплатформенным (работает как в Delphi 7, так и в Kylix). Далее рассмотрим обширный набор стандартных действий.
И в заключение читатель узнает о Windows-потомке TActionList под названием TActionManager и о связанных с ним компонентах.