如何同时对 QPushButton 应用悬停和格式化?

Posted

技术标签:

【中文标题】如何同时对 QPushButton 应用悬停和格式化?【英文标题】:How to apply hover and formatting simultaneously to QPushButton? 【发布时间】:2021-01-21 17:41:34 【问题描述】:

我试图在悬停时更改 QPushButton 元素的背景颜色。此外,我需要将我的格式保留在样式表中,但由于它不会在 GUI 中呈现,因此无法同时进行。

这是我想要保留的内容(开始收听按钮):

使用以下样式表,我可以在悬停时更改背景颜色,但格式化部分的其余部分不起作用:

QPushButton::hover#start_stop_button

background-color: rgb(255, 255, 255);

border-color:rgb(60, 231, 195);
border-style:outset;color:lightgrey;border-width:2px;border-radius: 12px;padding: 6px;background-color: rgb(50, 50, 100);

这就是我得到的(当没有悬停在开始收听按钮上时):

【问题讨论】:

我认为您只需将所有三个函数调用都放在悬停代码的大括号内。 没有按预期工作:( 【参考方案1】:

你在你的样式里放了两种不同的颜色,最后一个颜色和背景颜色一样,已经取了,你还没有把整个代码放在括号里

试试这个代码:

QPushButton:hover
    background-color: rgb(255, 255, 255);
    border-color: rgb(60, 231, 195);
    border-style: outset;
    color: lightgrey;
    border-width: 2px;
    border-radius: 12px;
    padding: 6px;

【讨论】:

以上是关于如何同时对 QPushButton 应用悬停和格式化?的主要内容,如果未能解决你的问题,请参考以下文章

鼠标在圆角QPushButton时如何不触发悬停状态?

QT5下的QPushButton错误,同时在macos上推送到全屏

子 QMenu 中的 QPushButton,悬停时更改背景

在悬停并按下时更改 QPushButton 图标

使用悬停和按下样式表 Qt

如何同时检测按键和鼠标悬停