如何确定QTabBar的高度

时间:2017-08-16 18:23:40

标签: qt pyqt qstyle

我有两个不同的QDockWidgets:一个包含另一个main_widget(File explorer)上方的一些按钮,另一个包含QTabWidget。

descr

问题:我的目标是将main_widget和制表符的内容设置为相同的高度。我该如何做到最好?

这是基本布局:

# File explorer
file_dock = QDockWidget()
tools_layout = QHBoxLayout()
tools_layout.addWidget(QToolButton(...))
...
layout = QVBoxLayout()
layout.setContentsMargins(0, 0, 0, 0)
layout.addLayout(tools_layout)
layout.addWidget(main_widget)
file_dock.setLayout(layout)

# Editor
editor_dock = QDockWidget()
layout = QVBoxLayout()
layout.setContentsMargins(0, 0, 0, 0)
editortabs = QTabWidget()
...
layout.addWidget(editortabs)

初步解决方案:

我可以手动调整tools_layoutmain_widget之间的间距:

layout.setSpacing(2)

enter image description here

但是此设置与操作系统和样式有关。

有没有办法计算所需的间距?

到目前为止,我已为sizeHint()找到了minimumSize()totalMinimumSize()tools_layout。在测试中,它们是相同的。哪一个使用?

这是所需信息的一半。如何确定标签的高度?在这里,我已经挖掘QStyle.pixelMetric(),尝试

style = qapplication().style()
style.pixelMetric(QStyle.PM_TabBarHSpace)
# ! crashes the program

0 个答案:

没有答案