TActionManager - мениджър на действия - Програмиране от

Заедно с другите три допълнителни компонента на страницата - TActionMainMenuBar, TActionToolBar и TCustomDIg (всички от които бяха представени за първи път във версия 6), ви позволява да създадете персонализиран потребителски интерфейс.

Например, средата на Delphi има такъв интерфейс: можете да добавяте/премахвате произволен бутон с инструменти, да деактивирате/разрешавате избор на бутони и опции на менюто и т.н.

Компонентът TActionManager централизира действия от същия тип, изпълнявани от функционално подобни интерфейсни елементи. Компонентът записва всяко такова действие в дисков файл, което позволява на програмата да „запомни“ последните настройки, направени от потребителя. По този начин компонентът значително разширява функционалността на компонента TActionList (вижте 18.1.16) и по същество го прави ненужен.

Нека се запознаем с метода на използване на компонента в следния пример.

Поставете компонентите TActionManager, TActionMainMenuBar, TActionToolBar и TCustomizeDlg върху празен формуляр. по подразбиране контейнерите TActionMainMenuBar и TActionToolBar ще заемат горната част на формуляра, позицията на другите два компонента няма значение.

Щракнете с десния бутон върху прозореца и изберете Ново стандартно действие или просто натиснете Ctrl+Ins - на екрана ще се появи допълнителен прозорец със списък на всички класове стандартни действия, дефинирани в Delphi (фиг. 18.21).

Поставете препратка към компонента ActionManagerl в свойството/събитието ActionManager на компонента TCustomizeDIg.

Напишете следния манипулатор onciick за TActionToolBar:

мениджър
Фиг. 18.21.Прозорец със списък със стандартни действия

Ако свойството FileName не е дефинирано, компонентът няма да може да запомни промените,направено от потребителя в интерфейса на програмата и ще представи елементите на интерфейса така, както са били дефинирани при създаването на програмата. Няма разширение по подразбиране за файла, но самият Delphi помни вашите промени във файла BIN\DELPHI32. ДМТ.