1

例如,当我enabled在 a 上设置属性时ComboBox,它会“变灰”。据我所知,它在组件上方绘制了一个具有一定不透明度的图层,因此原始设计可见但会略微褪色。我该如何调整这个效果?

我试图根据enabled属性的状态更改我的组件背景颜色,但这并没有帮助。例如,我将背景颜色设置为红色,当enabled属性为 false 时,它​​没有变成红色,由于我上面描述的覆盖,它变得更像浅红色。

一个简单的代码示例:

ComboBox {
  id: control
  enabled: false

  model: ["First", "Second", "Third"]

  background: Rectangle {
    color: control.enabled ? "transparent" : "red"
  }
}
4

1 回答 1

2

所以正如@jpnurmi 建议的那样,我的问题的根源在Qt 5.7.1 中得到了修复。

ComboBox {
  id: control
  enabled: false

  model: ["First", "Second", "Third"]

  opacity: 1 // *

  background: Rectangle {
    color: control.enabled ? "transparent" : "red"
  }
}

* = 在此处添加此项,将覆盖默认的不透明度行为,然后可以通过例如背景组件手动控制它。

于 2017-02-08T11:18:24.867 回答