pyqt5 QTableView表格复选框
# coding=utf-8 import sys from PyQt5.QtCore import * from PyQt5.QtWidgets import * from PyQt5.QtGui import * class Table(QWidget): def __init__(self,parent=None): super(Table, self).__init__(parent) #设置标题与初始大小 self.setWindowTitle('QTableView表格复选框案例') self.resize(500,300) self.tableView=QTableView() self.model = QStandardItemModel(self.tableView) #设置数据层次结构,4行4列 self.model=QStandardItemModel(4,4) t = QCheckBox(self) #设置水平方向四个头标签文本内容 self.model.setHorizontalHeaderLabels(['状态','姓名','身份证','地址']) for row in range(4): for column in range(4): item_checked = QStandardItem() item_checked.setCheckState(Qt.Checked) item_checked.setCheckable(True) self.model.setItem(column,0, item_checked) item=QStandardItem('row %s,column %s'%(row,column)) #设置每个位置的文本值 self.model.setItem(row,column,item) self.tableView.setModel(self.model) #设置布局 layout=QVBoxLayout() layout.addWidget(self.tableView) self.setLayout(layout) if __name__ == '__main__': app=QApplication(sys.argv) table=Table() table.show() sys.exit(app.exec_())