如何使用 QStyleSheet 控制 QDialog 的背景边框大小

How to control background border size of QDialog with QStyleSheet

使用样式表,如果我设置 QDialog 的背景颜色,我似乎无法控制可见颜色的宽度 - 内容与实际边框之间的间隙。例如,如果我创建了一个只有 QListWidget 的 QDialog,在 QGridLayout 中,我看到背景颜色显示为 QListWidget 周围的边框。我想让这个更薄。

我怎样才能减少这个 "border"?如果 QDialog 支持盒子模型,看起来背景剪辑会起作用。

我在 4.7,如果有什么不同的话

那是布局边框。您可以通过选择 QDialog 然后调整 layoutLeftMargin/layoutTopMargin/layoutRightMargin/layoutBottomMargin 属性从设计编辑器中减少它。

您也可以通过代码在布局上调用setContentMargins来设置边框宽度。例如:

ui->gridLayout->setContentsMargins(3,3,3,3); // sets the qdialog border width to 3px.