Delphi ToolButton的AllowWallUp属性不工作

Delphi ToolButton的AllowWallUp属性不工作,delphi,delphi-xe5,Delphi,Delphi Xe5,我使用的是DelphiXe5 我正在尝试按照Delphi关于ToolButton组件的帮助进行训练 Delphi帮助说明了关于TToolButton.AllowAllUp属性的信息: 指示是否可以同时取消选择组中的所有工具按钮 如果AllowAllUp设置为true,则可以取消选择组中的所有工具按钮。如果AllowAllUp设置为false,则必须随时在组中至少选择一个工具按钮。(通过将其“向下”属性设置为“真”,确定最初选择的工具按钮。) AllowAllUp仅在Grouped为true且St

我使用的是DelphiXe5

我正在尝试按照Delphi关于ToolButton组件的帮助进行训练

Delphi帮助说明了关于TToolButton.AllowAllUp属性的信息:

指示是否可以同时取消选择组中的所有工具按钮

如果AllowAllUp设置为true,则可以取消选择组中的所有工具按钮。如果AllowAllUp设置为false,则必须随时在组中至少选择一个工具按钮。(通过将其“向下”属性设置为“真”,确定最初选择的工具按钮。)

AllowAllUp仅在Grouped为true且Style设置为tbsCheck时有效。更改组中一个按钮的AllowAllUp值会自动更改组中所有按钮的值

我所做的是在表单上放置了一个TToolBar,并在其中创建了三个TToolbutton。然后AllowAllUp和Grouped属性设置为True。另外,将“样式”属性设置为tbsCheck

当我运行应用程序时,当我继续逐个单击所有按钮时,任何一个按钮都显示为选中,如果我尝试选择或单击其他按钮,则前一个按钮将变为未选中


如何使AllowAllUp属性工作?

这些属性都按预期工作。您似乎误解了这些属性的意图

该物业的文件说明:

如果相邻工具按钮的连续序列中的每个按钮都将其分组特性设置为true,并且将样式设置为tbsCheck,则不能同时选择多个按钮

该属性的相关描述如下:

指示是否可以同时取消选择组中的所有工具按钮 同时

如果AllowAllUp设置为true,则组中的所有工具按钮都可以 不被选中。如果AllowAllUp设置为false,则至少有一个工具按钮 必须随时选择组中的。(确定使用哪种工具 按钮最初是通过将其Down属性设置为true来选择的。)

AllowAllUp仅在Grouped为true且Style设置为 tbsCheck。更改组中一个按钮的AllowAllUp值 自动更改组中所有按钮的值

此属性仅在对按钮进行分组时才有影响,它所做的是控制是否可以关闭零个按钮。但是,一旦您对按钮进行了分组,任何时候都不能有多个组处于关闭状态

您需要执行以下操作:

  • Grouped
    设置为
    False
  • AllowAllUp
    设置为
    False
    ,这并不重要,但您也可以恢复默认值以避免混淆
  • 将样式设置为
    tbsCheck

完成此操作后,您可以独立地检查和取消检查按钮。

嘿,大卫,非常感谢。是的,我想我误解了“指示是否可以同时取消选择组中的所有工具按钮”的说法。因为我认为所有按钮可以同时选择,也可以同时取消选择,即,如果单击任何分组按钮,则所有分组按钮都将被选择或取消选择。