【发布时间】:2017-02-16 00:55:15
【问题描述】:
在 Qt Designer 中,我可以看到 verticalLayout 有一个默认边距(13px),但 pyuic5 总是给我 self.verticalLayout.setContentsMargins(0, 0, 0, 0)。在uiparser.py:443 我发现了这条评论:
默认情况下,布局小部件应该没有边距。
并将边距设置为(0,0,0,0)。另一条评论还说:
一个普通的 QWidget 是一个布局小部件,除非它的父级是 Q主窗口。注意对应的uic测试多一点 复杂,因为它涉及 pyuic 不支持的功能。
这是什么意思?我正在使用 PyQt-5.7,这是我的 ui 文件:
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>configDialog</class>
<widget class="QDialog" name="configDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>566</width>
<height>552</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="general">
<attribute name="title">
<string>General</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QPushButton" name="pushButton">
<property name="text">
<string>PushButton</string>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>
【问题讨论】:
标签: python qt layout pyqt qt-designer