pyqt5 设置tableview表格元素居中
时间: 2023-11-01 21:11:28 浏览: 221
你可以通过设置表格模型的对齐方式来让表格元素居中。具体操作如下:
```python
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QStandardItemModel
from PyQt5.QtWidgets import QApplication, QTableView
app = QApplication([])
table_view = QTableView()
# 创建一个表格模型
model = QStandardItemModel(4, 4)
for row in range(4):
for column in range(4):
item = str(row * column)
# 设置单元格内容
model.setItem(row, column, QStandardItem(item))
# 设置表格模型的对齐方式为居中
model.setTextAlignment(Qt.AlignCenter)
# 将表格模型设置给表格视图
table_view.setModel(model)
table_view.show()
app.exec_()
```
这样,在创建表格模型时,我们可以使用 `setTextAlignment()` 方法将对齐方式设置为居中。这样,在表格视图中显示的单元格内容就会居中显示。
相关问题
pyqt 设置tableview元素居中
可以通过设置`QHeaderView`和`QStandardItemModel`的`setAlignment`方法来将`QTableView`中的元素居中显示。以下是一个示例代码:
```python
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QStandardItemModel
from PyQt5.QtWidgets import QApplication, QTableView, QHeaderView, QStandardItem
app = QApplication([])
# 创建表格视图和模型
table_view = QTableView()
model = QStandardItemModel(4, 4)
table_view.setModel(model)
# 设置表头和单元格居中对齐
header = table_view.horizontalHeader()
header.setDefaultAlignment(Qt.AlignCenter)
model.setAlignment(Qt.AlignCenter)
# 添加数据
for row in range(4):
for column in range(4):
item = QStandardItem(f"({row}, {column})")
model.setItem(row, column, item)
# 调整列宽
header.setSectionResizeMode(QHeaderView.Stretch)
table_view.show()
app.exec_()
```
在上面的示例代码中,我们首先创建了一个`QTableView`和一个`QStandardItemModel`,然后设置了表头和单元格的默认对齐方式为居中。接下来,我们添加了一些数据,并调整了列宽以适应内容。最后,我们显示了`QTableView`。运行这段代码,你会看到所有的元素都已经居中显示了。
pyqt5中tableview怎么设置行高
你可以通过设置TableView的行高属性来调整行的高度。可以通过以下方式实现:
```python
# 设置行高为50
tableView.verticalHeader().setDefaultSectionSize(50)
```
其中,`tableView`是你的TableView对象,`setDefaultSectionSize`函数设置了默认行高为50个像素。你也可以根据需要,设置特定行的高度,例如:
```python
# 设置第1行的高度为50,第2行的高度为100
tableView.verticalHeader().resizeSection(0, 50)
tableView.verticalHeader().resizeSection(1, 100)
```
这里使用了`resizeSection`函数来调整特定行的高度,第一个参数是行的索引,第二个参数是行的高度。