向 pyqt 列表添加标题
Posted
技术标签:
【中文标题】向 pyqt 列表添加标题【英文标题】:adding a header to pyqt list 【发布时间】:2010-05-01 10:10:31 【问题描述】:我想在 pyqt 中的列表中添加标题和索引,QT 列表(qlistwidget、qlistview、qtablewidget、qtreeview)真的不重要 简而言之..我想要pyqt演示中的旋转框委托示例...... 但我想要一个字符串而不是列标题中的索引...
希望这个想法足够清楚 提前谢谢
【问题讨论】:
【参考方案1】:QTableWidget 可能是您的最佳选择 - 它使用setHorizontalHeaderLabels()
和setVerticalHeaderLabels()
让您控制两个轴。
from PyQt4 import QtGui
class MyWindow(QtGui.QMainWindow):
def __init__(self, parent):
QtGui.QMainWindow.__init__(self, parent)
table = QtGui.QTableWidget(3, 3, self) # create 3x3 table
table.setHorizontalHeaderLabels(('Col 1', 'Col 2', 'Col 3'))
table.setVerticalHeaderLabels(('Row 1', 'Row 2', 'Row 3'))
for column in range(3):
for row in range(3):
table.setItem(row, column, QtGui.QWidget(self)) # your contents
self.setCentralWidget(table)
self.show()
当然,如果您想完全控制标题的内容和格式,那么您可以使用 .setHorizontalHeaderItem() 和 .setVerticalHeaderItem() 方法为每个标题定义一个 QTableWidgetItem...
详情请参阅official documentation。
【讨论】:
以上是关于向 pyqt 列表添加标题的主要内容,如果未能解决你的问题,请参考以下文章
如何从另一个类 PyQT 向 QComboBox 添加项目?
PySide/PyQt4:向 QTableWidget Horizontal (column) Header 添加一个复选框