PyQT5 QTableView显示绑定数据的实例详解

2026-01-12 10:32:52 作者:用户投稿

如下所示:

import sys
from PyQt5 import QtCore,QtGui
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.uic import loadUi
	
class MainWindow(QMainWindow):
	def __init__(self, parent=None):
		super(MainWindow, self).__init__(parent)
		loadUi('qtdesigner.ui', self)
		self.pushButton.clicked.connect(self.say)
		self.showData()
		
	def say(self):		
		self.label.setText("哈哈哈")
		print("哈哈哈")	
		
	def showData(self):
		# 准备数据模型
		self.sm=QtGui.QStandardItemModel()
		
		#设置数据头栏名称
		self.sm.setHorizontalHeaderItem(0, QtGui.QStandardItem("Name"))
		self.sm.setHorizontalHeaderItem(1, QtGui.QStandardItem("NO."))
		
		#设置数据条目
		self.sm.setItem(0, 0, QtGui.QStandardItem("张三"))
		self.sm.setItem(0, 1, QtGui.QStandardItem("20120252"))
		
		self.sm.setItem(1, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(1, 1, QtGui.QStandardItem("20120253000000000000000"))
		
		self.sm.setItem(2, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(2, 1, QtGui.QStandardItem("20120253000000000000000"))
		
		self.sm.setItem(3, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(3, 1, QtGui.QStandardItem("20120253000000000000000"))
		
		self.sm.setItem(4, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(4, 1, QtGui.QStandardItem("20120253000000000000000"))
		
		self.sm.setItem(5, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(5, 1, QtGui.QStandardItem("20120253000000000000000"))
		
		#设置条目颜色和字体
		self.sm.item(0, 0).setForeground(QtGui.QBrush(QtGui.QColor(255, 0, 0)))		
		self.sm.item(0, 0).setFont(QtGui.QFont("Times", 10, QtGui.QFont.Black))
		
		self.sm.item(3, 1).setBackground(QtGui.QBrush(QtGui.QColor(255, 255, 0)))
		
		#按照编号排序
		self.sm.sort(1, QtCore.Qt.DescendingOrder)
		
		#将数据模型绑定到QTableView
		self.tableView.setModel(self.sm)
		
		#QTableView
		self.tableView.setColumnWidth(0,100)
		self.tableView.setColumnWidth(1,200)
	
app = QApplication(sys.argv)
w = MainWindow()
w.show()
sys.exit(app.exec())

以上这篇PyQT5 QTableView显示绑定数据的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

猜你喜欢

联络方式:

400 9058 355

邮箱:8955556@qq.com

Q Q:8955556

微信二维码
在线咨询 拨打电话

电话

400 9058 355

微信二维码

微信二维码