【问题标题】:Pyqt5 changing qpushbutton stylesheet when hovering over itPyqt5 将鼠标悬停在其上时更改 qpushbutton 样式表
【发布时间】:2020-10-11 06:58:21
【问题描述】:

所以我正在使用 pyqt5 制作一个应用程序,我想做的是制作一个自定义样式表的 qpushbutton,当鼠标悬停在它上面时它会改变颜色。我搜索了它,发现在 python 中,以下代码可以更改悬停设置:

button.setStyleSheet("QPushButton::hover"
                     "{"
                     "background-color : lightgreen;"
                     "}")

当我对其进行测试时,它可以工作,但随后它删除了我的自定义样式表。

button.setStyleSheet("background-color: #2B5DD1; color: #FFFFFF ; border-style: outset; 
padding: 2px ; font: bold 20px ; border-width: 6px ; border-radius: 10px ; border-color: #2752B8;")
                                    

是我的原始代码只有我的样式表,然后当我尝试将两者组合如下时:

to_meetings.setStyleSheet("background-color: #2B5DD1; color: #FFFFFF ; border-style: outset; padding: 2px ; font: bold 20px ; border-width: 6px ; border-radius: 10px ; border-color: #2752B8;"
                          "QPushButton::hover"
                          "{"
                          "background-color: #112452;"
                          "}")  

它运行得很好,但没有显示悬停设置,而是显示了我的自定义样式表。关于如何合并自定义样式表和悬停设置的任何想法?

【问题讨论】:

    标签: python pyqt pyqt5 qtstylesheets qpushbutton


    【解决方案1】:

    正如您使用 hover 伪状态定义 QPushButton 样式一样,您可以将其定义为常规状态。

    QPushButton {
        background-color: #2B5DD1;
        color: #FFFFFF;
        border-style: outset;
        padding: 2px;
        font: bold 20px;
        border-width: 6px;
        border-radius: 10px;
        border-color: #2752B8;
    }
    QPushButton:hover {
        background-color: lightgreen;
    }
    

    See customizing QPushButton examples in Qt docs

    【讨论】:

      猜你喜欢
      • 2015-02-14
      • 2014-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多