【问题标题】:Set content margins from stylesheet从样式表设置内容边距
【发布时间】:2012-11-17 23:09:03
【问题描述】:

我正在努力使用样式表将 Qt 中 QLayout 对象的内容边距设置为零。我可以使用 QLayout::setContentsMargins(0, 0, 0, 0) 删除它们,但我更愿意从样式表中删除它们。

【问题讨论】:

  • 使用 qt 设计器即可。
  • 我不想使用 qt 设计器,这不是解决方案,这是一种解决方法...
  • 这不是因为您可以在其中设置样式表和边距。所以基本上它完全符合你想要实现的目标。其他所有内容都可以在 Qt 文档中找到。
  • 我知道我可以在 QT 设计器中做到这一点,也可以使用 setContentsMargins() 方法做到这一点,但我希望能够使用样式表来做到这一点......跨度>
  • setStyleSheet(QLayout{ //css here })

标签: qt stylesheet margins qlayout


【解决方案1】:

到目前为止,这无法实现。使用

QLayout::setContentsMargins(0, 0, 0, 0)

QLayout::setSpacing(0)

如果您还想消除小部件之间的空间。

另请参阅此错误报告 Stylesheet controls for QLayout objects ,目前尚未解决。

【讨论】:

    【解决方案2】:

    无法为 QLayout 设置样式表,请改用 QWidget,您将在其中设置布局。然后,您可以使用样式表设置小部件的边距和/或填充以满足您的需要。

    【讨论】: