pyqt5如何实现这种自动换行的自适应效果

pyqt5如何实现这种自动换行的自适应效果

我一开始想到栅格布局,但是查了一下资料,没发现能自动换行的功能,只能手动输入坐标存放组件,是我没找到方法还是栅格做不到。我该如何实现这个效果?

img

QGridLayout 类提供了一种使用网格来管理窗口部件的方法。您可以使用 addWidget() 方法将部件添加到网格中,并使用 setRowStretch() 和 setColumnStretch() 方法设置行和列的伸缩性。

举个例子

from PyQt5.QtWidgets import QApplication, QLabel, QGridLayout, QWidget

app = QApplication([])

grid = QGridLayout()

# add widgets to grid
grid.addWidget(QLabel("Label 1"), 0, 0)
grid.addWidget(QLabel("Label 2"), 0, 1)
grid.addWidget(QLabel("Label 3"), 1, 0)
grid.addWidget(QLabel("Label 4"), 1, 1)

# set row and column stretch
grid.setRowStretch(0, 1)
grid.setRowStretch(1, 1)
grid.setColumnStretch(0, 1)
grid.setColumnStretch(1, 1)

# create and show the window
window = QWidget()
window.setLayout(grid)
window.show()

app.exec_()

望采纳