首页 > 解决方案 > 如何使用gridbox布局设置一个按钮来填充整行?

问题描述

我正在使用 Python 3 和 PyQt5。我使用 GridBoxLayout 来安排我的按钮。但我需要一个 Button 来填充整行,而 GridBoxLayout 无法做到这一点。

任何人都可以帮忙吗?

    gridLayout.addWidget(self.btn_startCapture, 0, 0)
    gridLayout.addWidget(self.btn_endCapture, 0, 1)
    gridLayout.addWidget(self.btn_startRecording, 0, 2)
    gridLayout.addWidget(self.btn_endRecording, 0, 3)
    gridLayout.addWidget(self.btn_takePicture, 0, 4)
    gridLayout.addWidget(self.btn_loadVideo, 0, 5)
    gridLayout.addWidget(self.linedit_getPicDir, 1, 0) # I want this button to fill the whole second row
    gridLayout.addWidget(self.linedit_getVideoDir, 2, 1)
    gridLayout.addWidget(self.btn_getVideoDir, 2, 2)
    gridLayout.addWidget(self.btn_getPicDir, 2, 3)

我明白了:

在此处输入图像描述

但我需要将图像 Dir lien edit 拉伸到第二行

标签: pythonpython-3.xpyqtpyqt5

解决方案


使用 QGridLayout,您可以将小部件设置为跨越多行或多列。例如,addWidget(QPushButton(), 0, 0, 3, 1) 将在 (0, 0) 放置一个跨越 3 行和 1 列的按钮。

在您的代码中,您只需将行和列跨度添加到该行:

gridLayout.addWidget(self.linedit_getPicDir, 1, 0, 1, 6)

推荐阅读