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

yipeiwu_com6年前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 pyinotify模块实现对文档的实时监控功能方法

0x01 安装pyinotify >>> pip install pyinotify >>> import pyinotify 0x02 实现对...

pandas数据预处理之dataframe的groupby操作方法

pandas数据预处理之dataframe的groupby操作方法

在数据预处理过程中可能会遇到这样的问题,如下图:数据中某一个key有多组数据,如何分别对每个key进行相同的运算? dataframe里面给出了一个group by的一个操作,对于”g...

Python利用pyHook实现监听用户鼠标与键盘事件

本文以一段简单的监听鼠标、键盘事件的程序,实现获取用户的输入(比如登录某些网站的账号、密码)的功能。经测试,对于一台“裸奔”的电脑,完全能获取到用户输入的任何信息;但是如果安装了杀毒软件...

Django unittest 设置跳过某些case的方法

按理说unittest 中是不应该测试那种外部依赖很强的用例,但是呢,有时候有些接口总是调试好之后怕忘了,就写了一些简单的测试case,想要通过在settings中增加一些配置来开启和关...

tensorflow 获取所有variable或tensor的name示例

获取所有variable(每个op中可训练的张量)的name: for variable_name in tf.global_variables(): print(variabl...