当前位置: 首页 > news >正文

手把手教你开发Python桌面应用-PyQt6图书管理系统-图书类别信息表格数据显示以及搜索实现

锋哥原创的PyQt6图书管理系统视频教程:

PyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~_哔哩哔哩_bilibiliPyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~共计24条视频,包括:PyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~、第2讲 登录功能UI设计实现、第3讲 数据库操作工具包dbUtil.py封装等,UP主更多精彩视频,请关注UP账号。icon-default.png?t=N7T8https://www.bilibili.com/video/BV18t4y1R7Qp/首先我们bookTypeDao里添加list方法,因为还有可能是带图书类别名称一起搜索,所以加上类别名称搜索条件。

def list(s_bookTypeName: str):"""根据条件查询图书类别信息:return:返回查询的图书类别信息列表"""con = Nonetry:con = dbUtil.getCon()cursor = con.cursor()sql = "select * from t_booktype where 1=1"if s_bookTypeName.strip() != '':sql += " and bookTypeName like '%" + s_bookTypeName + "%'"print(sql)cursor.execute(sql)return cursor.fetchall()except Exception as e:print(e)con.rollback()return Nonefinally:dbUtil.closeCon(con)

然后是bookTypeManage.py的Ui_Form类里,加上initTable()方法,用来实现初始化表格

    def initTable(self):"""根据条件初始化数据表格:return:"""# 获取搜索表单里的图书类别名称s_bookTypeName = self.s_bookTypeNameInput.text()result = bookTypeDao.list(s_bookTypeName)row = 0if result:row = len(result)self.bookTypeTable.setColumnCount(3)self.bookTypeTable.setRowCount(row)self.bookTypeTable.verticalHeader().setVisible(False)  # 隐藏垂直标题 序号self.bookTypeTable.setEditTriggers(QAbstractItemView.EditTrigger.NoEditTriggers)  # 禁止编辑单元格self.bookTypeTable.setSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding)self.bookTypeTable.setHorizontalHeaderLabels(['编号', '图书类别名称', '图书类别描述'])self.bookTypeTable.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.Stretch)  # 列头自适应self.bookTypeTable.setSelectionBehavior(QAbstractItemView.SelectionBehavior.SelectRows)  # 设置选择行为,以行为单位for i in range(row):for j in range(3):data = QTableWidgetItem(str(result[i][j]))self.bookTypeTable.setItem(i, j, data)

Ui_Form构造方法里,最后加上initTable()

搜索按钮也加上initTable的点击事件绑定

# 绑定搜索按钮点击事件self.searchBtn.clicked.connect(self.initTable)

运行测试:

http://www.lryc.cn/news/294759.html

相关文章:

  • 【HarmonyOS】鸿蒙开发之自定义组件——第3.7章
  • 初探unity中的ECS
  • 力扣:131. 分割回文串
  • 2024美赛数学建模B题思路源码
  • 线程的取消和互斥
  • 机器学习之DeepSequence软件使用学习1
  • 【Kotlin】Kotlin环境搭建
  • langgraph学习--创建基本的agent执行器
  • Mybatis中的sql-xml延迟加载机制
  • 【Linux系统学习】1.初识Linux
  • 政安晨:政安晨:机器学习快速入门(三){pandas与scikit-learn} {模型验证及欠拟合与过拟合}
  • 分享65个节日PPT,总有一款适合您
  • 架构学习(二):原生scrapy如何接入scrapy-redis,初步入局分布式
  • 第1节、电路连接【51单片机+L298N步进电机系列】
  • API接口文档怎么写?
  • Qt 范例阅读: QStateMachine状态机框架 和 SCXML 引擎简单记录(方便后续有需求能想到这两个东西)
  • Linux实验记录:使用DHCP动态管理主机地址
  • Qt应用软件【协议篇】MQTT协议介绍
  • Linux ncftp命令教程:如何使用ncftp来管理FTP服务器(附实例详解和注意事项)
  • 2、ChatGPT 在数据科学中的应用
  • 从小白到入门webrtc音视频通话
  • Qt之漂亮的地球
  • FPGA解码MIPI视频:Xilinx Artix7-35T低端FPGA,基于MIPI CSI-2 RX Subsystem架构实现,提供工程源码和技术支持
  • 使用docker部署Kafka(MAC Apple M2 Pro)
  • 车位检测,YOLOV8,OPENCV调用
  • FCIS 2023:洞悉网络安全新态势,引领创新防护未来
  • 前端工程化之:webpack2-1(常用扩展)
  • Python学习路线 - Python高阶技巧 - PySpark案例实战
  • 【TCP】高频面试题
  • Python||五城P.M.2.5数据分析与可视化_使用华夫图分析各个城市的情况(中)