pyqt5,创建10个QWidget,但是我希望这10个页面,每个页面都用QWidget创建,这10个页面不是排成1行,而是排成2行,请问代码如何编写
时间: 2023-09-20 13:04:32 浏览: 55
您可以使用QGridLayout来实现这个需求。以下是一个示例代码:
```
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QGridLayout
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("2 rows of 5 QWidgets")
grid_layout = QGridLayout()
for i in range(10):
widget = QWidget()
widget.setObjectName(f"widget{i}")
widget.setStyleSheet(f"background-color: #F0F0F0")
grid_layout.addWidget(widget, int(i/5), i%5)
self.setLayout(grid_layout)
self.show()
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
sys.exit(app.exec_())
```
这将会创建一个主窗口,并在其中使用QGridLayout布局,将10个QWidget分成两行,每行5个。您可以根据需要修改背景颜色等QWidget属性。