pyqt5-向中央窗口小部件添加布局使所有内容堆叠在一起

时间:2018-12-28 08:44:59

标签: python qt pyqt5

我在 qt设计器中创建了一个表单,我想在调整窗口大小时使其伸展。

我发现它要求将中央小部件放置在布局中。实际上,当我添加我的顶层布局并预览它的qt设计器时,它的外观和行为完全符合我的要求。但是,当我使用.py将其转换为pyuic5并从python运行时,它不再能正确显示。顶层布局中的所有小部件在左上角彼此堆叠。

当我中断此布局(无其他修改)并重新运行pyuic5时,它将重新起作用,除了调整窗口大小时的拉伸。

编辑:

发现我的问题不是窗体本身,而是我在Qt Designer中构建了一个Widget,然后我的主类从MainWindow继承了:

class MyApp(QtWidgets.QMainWindow):

    def __init__(self, parent=None):
        QtWidgets.QMainWindow.__init__(self, parent)
        self.ui = Ui_Form()
        self.ui.setupUi(self)

当我将此继承更改为QWidget时,它现在可以按预期工作。我猜这与“主窗口”具有菜单栏和状态栏(除了中央窗口小部件之外)有关吗?

0 个答案:

没有答案