PyQt Designer:如何使按钮的边缘更圆?

时间:2016-04-28 14:42:26

标签: python qt pyqt qt-designer

在PyQt的设计器工具中,当你创建一个QPushButton时,它首先看起来像这样: pic 1

如果您右键单击它,请选择“更改样式表”'并将按钮背景颜色更改为橙​​色,例如,您将获得此信息:

pic 2

如果你注意到,按钮的形状稍有变化,它的边缘变得更加清晰,即使是“咔哒”声也是如此。使它看起来更加平整'而且我不想要那个。我希望它看起来像之前,但只是将背景设置为橙色。这可能吗?作为替代方案,有没有办法让边缘更圆?

谢谢。

2 个答案:

答案 0 :(得分:2)

您可以通过在样式表中设置边框的半径来获得所需的效果,如下所示:

border-radius: 15px

编辑:我想我很快就会说话。我自己试了一下,当你设置了背景颜色时,它没有达到预期的效果。当你改变颜色时会发生一些其他奇怪的事情;它会删除一些其他默认样式,如果您希望它看起来与之前的相似,则需要手动添加。

尝试将以下内容添加到QPushButton的样式表中,并使用这些数字来查看它们对按钮的影响:

background-color: orange;
border-style: outset;
border-width: 2px;
border-radius: 15px;
border-color: black;
padding: 4px;

您可能还需要为按下按钮时设置一些样式更改(例如,在按下时将边框样式更改为插入)

答案 1 :(得分:0)

您可以使用QPalette使用更安全的方式

palette = button.palette()
palette.setColor(QtGui.QPalette.Button, QtGui.QColor('orange'))
button.setPalette(palette)