所有Qt Quick按钮控件状态的自定义样式

3

我正在寻找一种用QML为按钮的所有状态创建自定义样式的方法。到目前为止,我只发现了以下可以应用于多个按钮的样式创建方式。

Component {
  id: leftButtonStyle

  ButtonStyle {

      background: Rectangle {
          width: control.width
          height: control.height
          color: "black"
      }

      label: Text {
          font.family: "Helvetica"
          font.pointSize: 10
          color: "#949599"
          text: control.text
      }
  }

}

Button {
    text:"Button One"
    style: leftButtonStyle
}

Button {
        text:"Button Two"
        style: leftButtonStyle
}

但这只是改变了按钮的普通状态,找不到一种在按钮被按下时给予样式的方法。


1
实现问题应该在StackOverflow上讨论。 - user1345223
@GlenH7 那我该怎么移动它呢?我想我没有权限这样做。 - José María
你可以标记这个问题并请求管理员迁移。我也已经投票支持迁移,但目前只有一票。 - user1345223
2个回答

5
ButtonStyle 中,您可以使用control.hoveredcontrol.pressed来确定按钮何时被悬停或按下。
  ButtonStyle {
     background: Rectangle {
        width: control.width
        height: control.height
        color: control.pressed ? "gray" : "black"
     }
  }

非常感谢。现在我开始理解这是如何工作的了。 - José María

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接