[英]TToolbar Button with dropdown menu greyed out
我在让TToolbar按钮显示“启用”时遇到问题
该按钮有一个分配给它的动作 - 由OnClick事件触发
它还设置了一个下拉菜单,它有2个选项,两个选项都已启用,并且两个选项在单击时都会触发。
尽管如此,TToolbar Button仍然保持灰色,但接受点击。
有什么建议么?
你做错了。 :-)
使用操作时,您不使用按钮的OnClick
事件 - 您将代码放在操作的OnExecute
事件中(因为这是正在执行的操作 - 操作 - 而不是按钮)。 当为控件分配操作时,只有TAction.OnExecute
的处理程序才能启用该TAction.OnExecute
。
使用操作的原因是您可以将代码放在一个位置(与操作相关的事件),然后附加到该操作的每个控件都使用该公共代码来执行相同的功能。 在该单个位置编辑代码意味着附加到该操作的所有控件都会看到相同的更改。
如果TAction.OnExecute
事件没有附加任何内容,则控件如果被选中(单击)则无需执行任何操作,因此没有理由首先启用它。
如果其他人遇到这个问题,我就遇到了这个问题(使用Delphi 10.2 Tokyo)。
出于某种原因,TToolButton上的“EnableDropdown”属性导致按钮在设置为true时显示为灰色。 将此属性设置为false似乎已解决了我的问题(无论如何,下拉菜单仍然有效)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.