将新属性添加到TActionList中的Action

时间:2012-07-26 11:16:27

标签: delphi taction tactionlist

如何在Delphi中将新发布的(在Object Inspector中显示)属性添加到TActionList的Action中

属性数据类型为布尔值。

感谢。

1 个答案:

答案 0 :(得分:14)

通过从TAction派生来创建新的操作类。例如:

TMyAction = class(TAction)
...
published
  property MyBoolProp: Boolean ....
end;

然后,您可以通过调用RegisterActions在设计时包的Register程序中注册。

procedure Register;
begin
  .... // register any other components
  RegisterActions('MyCategory', [TMyAction], nil);
end;

然后从操作列表编辑器中选择New Standard Action,您的操作将显示在可用操作的树状视图中。

enter image description here

enter image description here


在评论中,您似乎暗示您要修改TAction以拥有新属性。这需要修改VCL本身,这是你无法控制的。毫无疑问,VCL可能被黑客攻击以达到你的要求,但这不是一个好主意。