Динамично създаване на действие в TActionList-e
вероятно тривиален въпрос: (но няма да отсеча как динамично да създавам действия в TActionList-e
конструктор Създаване (AOwner: TComponent); заместване;
Приложенията обикновено не създават изрично обекти за действие. Действията се създават автоматично, когато ги добавите към мениджър на действия или компонент от списъка с действия по време на проектиране. Когато създавате екземпляр на TAction по време на изпълнение, задайте компонент TActionList или TActionManager на свойството ActionList на новото действие след извикване на Create.
Просто мисля, че трябва да създадете действие.
Но като цяло
Забележка: TActionList е предназначен главно за управление на действията в приложения на различни платформи. Въпреки че винаги е възможно да се поддържат действия за приложение, използвайки TActionList, може да бъде по-просто да се използва вместо това мениджър на действия.
Трябва да приложа ShortCuts за някои действия, броят им не е известен предварително (не е много:))
Опитах го по различни начини:(
ние можем да бъдем различни. [2]
> Трябва да приложа ShortCuts за някои действия,
> броят им не е известен предварително (не много:))
Тогава е по-лесно да приложите прихващането на клавиатурата.
Или направете всички реакции на действия и след това им променете преките пътища.
AAction: = TAction.Create (Self);
с AAction започнете
Име: = ActionNamePrefix + APlugin.ActionInfo.Name;
Надпис: = APlugin.ActionInfo.Caption;
HelpContext: = APlugin.ActionInfo.HelpContext;
Съвет: = APlugin.ActionInfo.Hint;
ShortCut: = APlugin.ActionInfo.ShortCut;
ако е назначен (APlugin.ActionInfo.Glyph) И
Тогава е присвоено (Self.CustomizeActionList.Images)
ImageIndex: = Self.CustomizeActionList.Images.Add (APlugin.ActionInfo.Glyph, nil);
Активирано: = APlugin.Enabled;
Проверено: = APlugin.Checked;
OnExecute: = APlugin.Execute;
OnUpdate: = APlugin.OnActionUpdate;
ActionList: = Self.CustomizeActionList;
Етикет: = LongInt (указател (APlugin));
край;
> Или направете всички реакции на действия
всъщност сега всичко това е рализирано. Засега има 4 Действия, но това не е добре, тъй като днес ще върви по този начин, а утре, ако трябва да пренапишете повече от програмата?
> Тогава е по-лесно да приложите прихващането на клавиатурата
с ActionList е по-лесно от текущото, не знам как да създавам действия
веднага въпросът е да ги съхраним къде?