QPushButton或QToolButton的颜色

QPushButton或QToolButton的颜色,qt,stylesheet,Qt,Stylesheet,我正在使用Qstylesheet来控制一些QPushButtons和QToolButtons的行为。当我将鼠标悬停在它们上方时,它们会变成黑色,正如我所希望的那样。然而,一旦我按下它们,它们就会变成一种有趣的灰红色,里面画着一个红色框 为了避免这种行为,我必须设置什么属性或伪状态?我已经浏览了所有与选择和背景相关的属性,如果没有看到您的风格,我无法消除这些属性。解决您的问题有点困难。所以我要做的是解释一下事情是如何运作的,希望你能决定如何最好地解决你的问题 首先,当你设计你的按钮时,确保你覆盖了

我正在使用Qstylesheet来控制一些QPushButtons和QToolButtons的行为。当我将鼠标悬停在它们上方时,它们会变成黑色,正如我所希望的那样。然而,一旦我按下它们,它们就会变成一种有趣的灰红色,里面画着一个红色框


为了避免这种行为,我必须设置什么属性或伪状态?我已经浏览了所有与选择和背景相关的属性,如果没有看到您的风格,我无法消除这些属性。解决您的问题有点困难。所以我要做的是解释一下事情是如何运作的,希望你能决定如何最好地解决你的问题

首先,当你设计你的按钮时,确保你覆盖了所有的基础是很重要的。我相信你知道大部分,但以防万一

QPushButton和QToolButton有许多可以设置样式的状态,因此您希望确保您的按钮在每个状态下都明显不同,以便用户能够分辨出差异

QPushButton
{ 
   //  The default look of your button
}

QPushButton:disabled 
{ 
}

QPushButton:pressed  
{  
}

QPushButton:focus    
{
}

QPushButton:hover
{
}

QPushButton:checked
{
}
使用诸如背景色、前景色、边框色之类的颜色,通常情况下,你很适合使用

background-color: red;
color: white;  // foreground color
border-width: 1px;
border-color: black;
要知道的第二件事是,样式可以继承。因此,在向小部件添加样式时,要特别小心。创建样式时,请尽量具体。如果将此样式赋予UI中的某些内容,则背景颜色将为蓝色,但危险的是,此样式的所有子窗口小部件也将继承此样式

QWidget
{
    background-color: blue;
}
也许这就是你想要的,但通常不是。因此,如果要设置按钮样式,请始终在按钮周围放置QPushButton或QToolButton选择器,这同样适用于正在设置样式的其他内容。所以这可能就是你的灰红色的来源

现在,关于设置按钮样式的最后一件事是焦点矩形。当你的按钮被聚焦时,会出现令人恼火的虚线。见下图

不幸的是,无法使用样式表设置焦点矩形的样式。但是如果你想要的话,你可以摆脱它。请参阅以下链接:

总之

确保您的按钮样式覆盖您所选择的所有状态 需要 确保您的按钮不受任何其他按钮的影响 已添加到其他小部件的样式。 要么改变,要么摆脱 根据需要调整焦点矩形的位置。
我希望这有帮助。如果您需要更具体的帮助,请发布您的风格,我来看看。

没有看到您的风格,解决您的问题有点困难。所以我要做的是解释一下事情是如何运作的,希望你能决定如何最好地解决你的问题

首先,当你设计你的按钮时,确保你覆盖了所有的基础是很重要的。我相信你知道大部分,但以防万一

QPushButton和QToolButton有许多可以设置样式的状态,因此您希望确保您的按钮在每个状态下都明显不同,以便用户能够分辨出差异

QPushButton
{ 
   //  The default look of your button
}

QPushButton:disabled 
{ 
}

QPushButton:pressed  
{  
}

QPushButton:focus    
{
}

QPushButton:hover
{
}

QPushButton:checked
{
}
使用诸如背景色、前景色、边框色之类的颜色,通常情况下,你很适合使用

background-color: red;
color: white;  // foreground color
border-width: 1px;
border-color: black;
要知道的第二件事是,样式可以继承。因此,在向小部件添加样式时,要特别小心。创建样式时,请尽量具体。如果将此样式赋予UI中的某些内容,则背景颜色将为蓝色,但危险的是,此样式的所有子窗口小部件也将继承此样式

QWidget
{
    background-color: blue;
}
也许这就是你想要的,但通常不是。因此,如果要设置按钮样式,请始终在按钮周围放置QPushButton或QToolButton选择器,这同样适用于正在设置样式的其他内容。所以这可能就是你的灰红色的来源

现在,关于设置按钮样式的最后一件事是焦点矩形。当你的按钮被聚焦时,会出现令人恼火的虚线。见下图

不幸的是,无法使用样式表设置焦点矩形的样式。但是如果你想要的话,你可以摆脱它。请参阅以下链接:

总之

确保您的按钮样式覆盖您所选择的所有状态 需要 确保您的按钮不受任何其他按钮的影响 已添加到其他小部件的样式。 要么改变,要么摆脱 根据需要调整焦点矩形的位置。
我希望这有帮助。如果您需要更具体的帮助,请发布您的风格,我来看看。

您能提供更多信息吗,例如您运行的是什么平台,什么版本的Qt,您能提供一点代码来显示您正在做什么吗?您能提供更多信息吗,例如您运行的是什么平台,什么版本的Qt,你能提供一点代码来说明你在做什么吗?