如何删除 QTabWidget 的“填充”?
Posted
技术标签:
【中文标题】如何删除 QTabWidget 的“填充”?【英文标题】:How can I remove the "padding" of a QTabWidget? 【发布时间】:2017-02-15 16:35:21 【问题描述】:我有一个QTabWidget
,里面有一个QTableWidget
,如下例所示:
但它在QTabWidget
(图中标记为红色)中有一个“填充”(至少我认为是填充)。
如何删除或扩展 QTableWidget 以填充 QTabWidget 区域?
我使用的是 Qt 5.3。
【问题讨论】:
【参考方案1】:试试这样的:
tabwidget.setStyleSheet("QTabWidget::pane
margin: 0px,1px,1px,1px;
border: 2px solid #020202;
border-radius: 7px;
padding: 1px;
background-color: #E6E6E3;
");
希望对你有帮助
【讨论】:
【参考方案2】:问题似乎与QTabWidget
的“窗格”边距有关。
我通过在样式表上使用它解决了这个问题:
QTabWidget::pane
border: 0 solid white;
margin: -13px -9px -13px -9px;
【讨论】:
【参考方案3】:当您将QTableWidget
放到QTabWidget
选项卡上时,您可以右键单击它(QTabWidget
)并选择Lay out -> Lay out vertically
(例如,或水平),这将添加一个垂直布局元素并放置您的@987654329 @ 进去,填满整个标签。然后,选择新建的verticalLayout,向下滚动到Layout
部分,从这里可以控制layoutLeftMargin
、layoutTopMargin
、layoutRightMargin
和layoutBottomMargin
属性:
将它们全部设置为 0,将为您提供所需的结果(不涉及样式表):
【讨论】:
嗨@Dmitriy,感谢您的回答。实际上,我在 QTabWidget 中添加了一个垂直布局(使用 Qt 设计中的上部布局菜单),但布局选项没有出现在我的属性编辑器中。 我正在寻找类似的东西,但在您的示例中,您仍然可以清楚地看到内部框架和选项卡小部件本身之间的 1 像素边距。那么,它并没有完全删除它?以上是关于如何删除 QTabWidget 的“填充”?的主要内容,如果未能解决你的问题,请参考以下文章
如何删除 QTabWidget 上的额外“边框”? [复制]
如何在 QTabWidget Stretch 中制作标签以避免滚动
动态创建选项卡 QTabWidget 并填充表格 QTableWidget