python tableview添加内容_python pyqt5 QTableView

本文介绍如何使用PyQt5的QTableView组件填充数据并进行操作。通过创建QStandardItemModel模型,设置标题和数据,实现4x4表格的显示。同时,文章涉及了表格的优化,如调整列宽以填满窗口,以及删除选中行的功能。
摘要由CSDN通过智能技术生成

数据模型的几种选择:

image.png

image.png

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)

#设置数据层次结构,4行4列

self.model=QStandardItemModel(4,4)

#设置水平方向四个头标签文本内容

self.model.setHorizontalHeaderLabels(['标题1','标题2','标题3','标题4'])

# #Todo 优化2 添加数据

# self.model.appendRow([

# QStandardItem('row %s,column %s' % (11,11)),

# QStandardItem('row %s,column %s' % (11,11)),

# QStandardItem('row %s,column %s' % (11,11)),

使用PyQt5中的QTableView显示MySQL数据库中的数据,可以通过以下步骤实现: 1. 安装PyMySQL模块: ``` pip install PyMySQL ``` 2. 导入PyQt5和PyMySQL模块: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QTableView from PyQt5.QtSql import QSqlDatabase, QSqlQuery, QSqlTableModel import pymysql ``` 3. 创建一个数据库连接: ```python db = QSqlDatabase.addDatabase("QMYSQL") db.setHostName("localhost") # 数据库主机名 db.setPort(3306) # 数据库端口 db.setDatabaseName("test") # 数据库名称 db.setUserName("root") # 数据库用户名 db.setPassword("123456") # 数据库密码 if not db.open(): print("无法连接数据库") sys.exit(-1) ``` 4. 执行SQL查询并将结果显示在QTableView中: ```python model = QSqlTableModel() model.setTable("student") # 表名 model.setEditStrategy(QSqlTableModel.OnManualSubmit) model.select() view = QTableView() view.setModel(model) view.show() ``` 完整代码示例: ```python import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QTableView from PyQt5.QtSql import QSqlDatabase, QSqlQuery, QSqlTableModel import pymysql if __name__ == '__main__': app = QApplication(sys.argv) db = QSqlDatabase.addDatabase("QMYSQL") db.setHostName("localhost") # 数据库主机名 db.setPort(3306) # 数据库端口 db.setDatabaseName("test") # 数据库名称 db.setUserName("root") # 数据库用户名 db.setPassword("123456") # 数据库密码 if not db.open(): print("无法连接数据库") sys.exit(-1) model = QSqlTableModel() model.setTable("student") # 表名 model.setEditStrategy(QSqlTableModel.OnManualSubmit) model.select() view = QTableView() view.setModel(model) view.show() sys.exit(app.exec_()) ``` 注意:该代码只是简单地演示了如何使用PyQt5和PyMySQL连接数据库,并将数据显示在QTableView中。在实际应用中,需要根据具体需求进行相应的修改和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值