Ajouter une nouvelle propriété à l'action dans TActionList
-
12-12-2019 - |
Question
Comment puis-je ajouter une nouvelle propriété publiée (à afficher dans l'inspecteur d'objets) à l'action de TActionList dans Delphi
le type de données de propriété est booléen.
Merci.
La solution
Créez votre nouvelle classe d'action en dérivant de TAction
.Par exemple:
TMyAction = class(TAction)
...
published
property MyBoolProp: Boolean ....
end;
Et puis vous pouvez l'enregistrer à partir de votre package de conception Register
procédure en appelant RegisterActions
.
procedure Register;
begin
.... // register any other components
RegisterActions('MyCategory', [TMyAction], nil);
end;
Ensuite, dans l'éditeur de liste d'actions, sélectionnez New Standard Action
et votre action apparaîtra dans l'arborescence des actions disponibles.
Dans les commentaires, vous semblez laisser entendre que vous souhaitez modifier TAction
avoir une nouvelle propriété.Cela nécessiterait une modification de la VCL elle-même et cela échappe à votre contrôle.Il ne fait aucun doute que la VCL pourrait être piratée pour obtenir ce que vous demandez, mais ce n'est pas une bonne idée.