我已经设置了 QToolButton::autoRaise = true - 这适用于 Windows 但不适用于 Mac OSX 这将使平面按钮在鼠标悬停时看起来会升高...
我知道 Mac OSX 上的 QToolButton 存在限制。 http://doc.qt.io/qt-5/qtoolbutton.html#autoRaise-prop
有没有办法解决这个问题?
我已经设置了 QToolButton::autoRaise = true - 这适用于 Windows 但不适用于 Mac OSX 这将使平面按钮在鼠标悬停时看起来会升高...
我知道 Mac OSX 上的 QToolButton 存在限制。 http://doc.qt.io/qt-5/qtoolbutton.html#autoRaise-prop
有没有办法解决这个问题?
我找到了答案..您需要将这些添加到样式表中,以便 Mac OSX 工作和行为类似于 Windows:
QToolButton:checked
{
background-color: rgb(175,175,175);
}
QToolButton
{
background-color: transparent;
}
QToolButton:hover
{
background-color: rgb(175,175,175);
}
因为该属性依赖于样式,并且 MacStyle 使用在这种情况下忽略 autoRaise 属性的本机属性,所以您唯一的选择是使用样式表为按钮做所有事情:
button = QtGui.QPushButton("FOO")
button.setFlat(True)
button.setStyleSheet("""
QPushButton {
border: 2px solid #8f8f91;
border-radius: 6px;
background-color: #dadbde;
min-width: 80px;
}
QPushButton:pressed {
background-color: qlineargradient(
x1: 0, y1: 0, x2: 0, y2: 1,
stop: 0 #dadbde, stop: 1 #f6f7fa
);
}
QPushButton:hover {
border: 2px solid blue;
border-radius: 6px;
}
""")