有没有办法改变 QPushButton 的 "external" 边框?

Is there a way to change the "external" border of a QPushButton?

我正在尝试将我的应用程序 QPushButton 外观 更改为类似于 PyCharm 个。 我几乎成功了,但我想更改 focus.

按钮的“外部”边框

为了更好地解释我自己,下面张贴了两个屏幕截图:第一个显示了 PyCharm 对话框,焦点在 OK 按钮上,第二个显示了我的应用程序对话框的一部分,焦点在 OK还有按钮。

按钮相似,但在第一张图片中边框向外“增长”,而在第二张图片中边框向内“增长”。

有没有办法通过 样式表 来改变这个“属性”?

我的样式表如下:

QPushButton{
    font-family: "Segoe UI";
    font-size: 8pt;
    border: 1px solid;
    border-color: rgb(46, 103, 156); 
    border-radius: 3px; 
    padding-right: 10px; 
    padding-left: 10px;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: rgb(77, 138, 201);
    color: white;
    font: bold;
    width: 64px;
}
QPushButton:hover {
    border: 1px solid;
    border-radius: 3px;
    border-color: rgb(33, 77, 115);
}
QPushButton:focus {
    outline-color: transparent;
    border: 2px solid;
    border-color: rgb(151, 195, 243);
}
QPushButton:pressed{
    background-color: rgb(52, 113, 173);
}
QPushButton:disabled {
    color: grey;
    border-color: grey;
    background-color: none;
}

您可以设置默认边距(设置有效小部件矩形与其 绘制 内容之间的边距),并将 focus 选择器的默认边距设置为 0 :

QPushButton {
    ...
    margin: 1px;
}
QPushButton:focus {
    ...
    margin: 0px;
}