QGridLayout令每个格子都大小一样,怎么做
时间: 2024-05-01 11:22:04 浏览: 150
可以使用`setColumnStretch`和`setRowStretch`方法来设置每个格子的大小相同。示例如下:
```python
from PyQt5.QtWidgets import QApplication, QGridLayout, QPushButton, QWidget
app = QApplication([])
window = QWidget()
layout = QGridLayout()
# 添加按钮到网格布局中
for i in range(3):
for j in range(3):
button = QPushButton(f"Button ({i}, {j})")
layout.addWidget(button, i, j)
# 设置每个列和行都有相同的大小
layout.setColumnStretch(0, 1)
layout.setColumnStretch(1, 1)
layout.setColumnStretch(2, 1)
layout.setRowStretch(0, 1)
layout.setRowStretch(1, 1)
layout.setRowStretch(2, 1)
window.setLayout(layout)
window.show()
app.exec_()
```
在这个示例中,`setColumnStretch`和`setRowStretch`方法将每个列和行都设置为相同的大小。在这个特定的例子中,每个列和行的大小都被设置为1,所以每个格子都会有相同的大小。你可以根据需要调整每个列和行的大小。
阅读全文