我有一个使用TActionToolBar和TActionManager的工具栏。按钮具有可用的子按钮,单击按钮右侧的向下小箭头即可。所有这些都由VCL管理,并且运行良好。
当我点击顶层按钮时,我想显示子按钮。现在,我只需要单击小箭头,但我希望整个按钮也能做到这一点。
有可能吗?
谢谢
发布于 2012-11-16 04:09:14
听起来您可以使用DropDown控件,该控件在选定项时起作用。除此之外,只需将代码放入OnButtonClick方法中,即可模拟被单击的向下箭头。
发布于 2013-10-26 07:39:38
我设法让以下内容为我的项目工作。我找不到直接引用在ActionBar上创建的按钮的方法。但是,ActionComponent被设置为在运行时创建的按钮。
当然,这必须是一个Action本身,才能连接到Action Bar上的主按钮,在那里附加了子项。
procedure TReportPlugin.actMyDropdownExecute(Sender: TObject);
var
ActionButton: TCustomDropDownButton;
begin
inherited;
if (Sender is TAction) then
begin
if (Sender as TAction).ActionComponent is TCustomDropDownButton then
begin
ActionButton := (Sender as TAction).ActionComponent as TCustomDropDownButton;
ActionButton.DropDownClick;
end;
end;
end;https://stackoverflow.com/questions/13405136
复制相似问题