PyQT5一起学做图书管理系统(7)书籍库查看界面
环境
系统:windows10系统
编辑器:Sublime3
编程语言:python3+pyqt5
前言
对于书籍查询,从数据库的设计可以看到,在这里我们只需要使用Book表的数据,就可以实现书籍信息的查询了
在这个功能的实现上,主要实现了这些功能:
- 模糊匹配
- 按书名,作者,书号,出版社查询
- 跳转页,翻页
这次在代码中没有使用sqlite3,而是用了PyQT5自带的这个数据库模块,主要功能和sqlite3是一样的,但是使用起来稍微有一点区别。
程序代码
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2018-12-05 21:37:56
# @Author : Jimy_Fengqi (jmps515@163.com)
# @Link : https://blog.csdn.net/qiqiyingse/
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import Qt
import qdarkstyle
from PyQt5.QtSql import *
class BookStorageViewer(QWidget):
def __init__(self):
super(BookStorageViewer, self).__init__()
self.resize(700, 500)
self.setWindowTitle("欢迎使用图书馆管理系统")
# 查询模型
self.queryModel = None
# 数据表
self.tableView = None
# 当前页
self.currentPage = 0
# 总页数
self.totalPage = 0
# 总记录数
self.totalRecord = 0
# 每页数据数
self.pageRecord = 10
self.setUpUI()
def setUpUI(self):
self.layout = QVBoxLayout()
self.Hlayout1 = QHBoxLayout()
self.Hlayout2 = QHBoxLayout()
# Hlayout1控件的初始化
self.searchEdit = QLineEdit()
self.searchEdit.setFixedHeight(32)
font = QFont()
font.setPixelSize(15)
self.searchEdit.setFont(font)
self.searchButton = QPushButton("查询")
self.searchButton.setFixedHeight(32)
self.searchButton.setFont(font)
self.searchButton.setIcon(QIcon(QPixmap("./images/search.png")))
self.condisionComboBox = QComboBox()
searchCondision = ['按书名查询', '按书号查询', '按作者查询', '按分类查询', '按出版社查询']
self.condisionComb