2

我需要在 Qt 4.8 中制作一个可检查的按钮,当被选中时它会被禁用。

我遇到的问题是按钮变成灰色,我需要让它始终保持相同的颜色。对于两种可能的路径,我有两个问题:

1)当我使用button.setEnabled(false)时,有没有办法禁用灰显效果?

2)有没有办法挂钩点击事件,所以我可以“模拟”禁用的属性?

提前致谢!

[编辑]为了提供一点上下文,我有两个应该相互切换的按钮,这就是为什么我需要防止点击按下的按钮。

4

3 回答 3

3

试试button.blockSignals(true)。您还可以使用 Qt 样式表覆盖按钮禁用时的外观。

于 2012-11-29T13:05:43.053 回答
0

为了提供一点上下文,我有两个应该相互切换的按钮,这就是为什么我需要防止点击按下的按钮。

您应该改用QButtonGroup

取消选中按钮的唯一方法是当用户选中另一个按钮时......

来自文档

在独占组中,用户不能通过点击取消选中当前选中的按钮;相反,必须单击组中的另一个按钮才能为该组设置新的选中按钮。

于 2012-11-29T16:44:27.780 回答
0

用于禁用工具按钮并放置您选择的图标而不是变成灰色

  1. 您必须加载创建 QPixmap 对象的图标,例如 qpm,
  2. 创建 QIcon 对象说图标
  3. icon.addPixmap(qpm,QIcon::Disabled,QIcon::On)此行将显示图标
  4. 工具按钮上的 setIcon
  5. 设置样式表

启用 Toolbutton 时只需更改 3。icon.addPixmap(qpm,QIcon::Normal,QIcon::On)

于 2021-05-06T04:04:45.043 回答