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

yipeiwu_com5年前Python基础

如下所示:

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("20120202"))
		
		self.sm.setItem(1, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(1, 1, QtGui.QStandardItem("20120203000000000000000"))
		
		self.sm.setItem(2, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(2, 1, QtGui.QStandardItem("20120203000000000000000"))
		
		self.sm.setItem(3, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(3, 1, QtGui.QStandardItem("20120203000000000000000"))
		
		self.sm.setItem(4, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(4, 1, QtGui.QStandardItem("20120203000000000000000"))
		
		self.sm.setItem(5, 0, QtGui.QStandardItem("李四"))
		self.sm.setItem(5, 1, QtGui.QStandardItem("20120203000000000000000"))
		
		#设置条目颜色和字体
		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显示绑定数据的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python轻量级ORM框架Peewee访问sqlite数据库的方法详解

本文实例讲述了Python轻量级ORM框架Peewee访问sqlite数据库的方法。分享给大家供大家参考,具体如下: ORM框架就是 object relation model,对象关系...

Pycharm小白级简单使用教程

Pycharm小白级简单使用教程

pycharm是一款很流行的编写Python程序的编程软件,这篇文章给大家介绍Pycharm使用教程。 1、下载pycharm pycharm是一种Python IDE,能够帮助我们在编...

Python利用字典将两个通讯录文本合并为一个文本实例

Python利用字典将两个通讯录文本合并为一个文本实例

本文实例主要实现的是利用字典将两个通讯录文本合并为一个文本,具体代码如下: def main(): ftele1=open("d:\TeleAddressBook.txt","r...

解决tensorflow模型参数保存和加载的问题

终于找到bug原因!记一下;还是不熟悉平台的原因造成的! Q:为什么会出现两个模型对象在同一个文件中一起运行,当直接读取他们分开运行时训练出来的模型会出错,而且总是有一个正确,一个读取...

基于python中theano库的线性回归

theano库是做deep learning重要的一部分,其最吸引人的地方之一是你给出符号化的公式之后,能自动生成导数。本文使用梯度下降的方法,进行数据拟合,现在把代码贴在下方 代码块...