1、创建表单
self.table = QTableWidget(5,2) #或者 self.table = QTableWidget() self.table.setColumnCount(5) self.table.setRowCount(2)
2、表头
表头分 水平表头horizontal header 和 垂直表头vertical header两种。
添加水平表头:setHorizontalHeaderLabels()
添加垂直表头:setVerticalHeaderLabels()
#添加水平表头 horizontalHeader = ["工号","姓名","性别","年龄","职称"] self.table = QTableWidget() self.table.setHorizontalHeaderLabels(horizontalHeader)
影藏表头:self.table.verticalHeader().setVisible(False)
3、行列数
表格的行数:self.table.rowCount()
表格的列数:self.table.columnCount()
4、插入列表项
x = '我不会啊啊啊' item = QTableWidgetItem(x) #设置列表项颜色 item .setTextColor(QColor(250,0,0)) item .setBackgroundColor(QColor(255,255,1)) row_count = self.table.rowCount() #获取列表的行数 self.table.insertRow(row_count) #在列表末尾插入一行 self.table.setItem(row_count , indexY, item ) # 在row_count 、indexY位置插入item
5、动态删除行、列
self.table.removeRow(index) #删除第index行 及其内容 self.table.removeColumn(index) #删除第index列 及其内容
6、clear()
clear函数只清空table的内容, 不删除列表的行列。
使用clear函数清空列表内容后,可以用 self.table.setRowCount() / self.table.setColumnCount() 重新设置表格的行列数。
7、列表项点击
首先,设置列表项点击信号:
self.connect(self.table, SIGNAL("cellDoubleClicked(int,int)"), self.handleItemClick)
然后,在下面函数中写响应函数:
def handleItemClick(self, item=None):
pass
8、禁止编辑 self.table.setEditTriggers(QAbstractItemView.NoEditTriggers)