PyQt5搭建图书馆管理系统(4)——管理员主页设计
PyQt5搭建图书馆管理系统(4)——管理员主页设计
- PyQt5搭建图书馆管理系统(4)——管理员主页设计
- 分析
- 代码
- 效果
- 最后附上链接
分析
在管理员主页,为了完成初步的功能,即添加书本,淘汰书本,查看库存,我们需要设计以下:
- 一个添加书本的Dialog,通过一个button启用
- 一个淘汰书本的Dialog,通过一个button启用
- 一个查看库存的Table, 一开始打算用一个button启用的,后来觉得直接放主页也挺好的,所以并没有用button启用(虽然依然放在设计中)
代码
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import qdarkstyle
from addBookDialog import addBookDialog
from dropBookDialog import dropBookDialog
from BookStorageViewer import BookStorageViewer
from UserManage import UserManageclass AdminHome(QWidget):def __init__(self):super().__init__()self.setUpUI()def setUpUI(self):self.resize(900, 600)self.setWindowTitle("欢迎使用图书馆管理系统")self.layout = QHBoxLayout()self.buttonlayout = QVBoxLayout()self.setLayout(self.layout)font = QFont()font.setPixelSize(16)self.userManageButton = QPushButton("用户管理")self.addBookButton = QPushButton("添加书籍")self.dropBookButton = QPushButton("淘汰书籍")self.userManageButton.setFont(font)self.addBookButton.setFont(font)self.dropBookButton.setFont(font)self.userManageButton.setFixedWidth(100)self.userManageButton.setFixedHeight(42)self.addBookButton.setFixedWidth(100)self.addBookButton.setFixedHeight(42)self.dropBookButton.setFixedWidth(100)self.dropBookButton.setFixedHeight(42)self.buttonlayout.addWidget(self.addBookButton)self.buttonlayout.addWidget(self.dropBookButton)self.buttonlayout.addWidget(self.userManageButton)self.layout.addLayout(self.buttonlayout)self.storageView = BookStorageViewer()self.layout.addWidget(self.storageView)self.addBookButton.clicked.connect(self.addBookButtonClicked)self.dropBookButton.clicked.connect(self.dropBookButtonClicked)self.userManageButton.clicked.connect(self.userManage)def addBookButtonClicked(self):addDialog = addBookDialog(self)addDialog.add_book_success_signal.connect(self.storageView.searchButtonClicked)addDialog.show()addDialog.exec_()def dropBookButtonClicked(self):dropDialog = dropBookDialog(self)dropDialog.drop_book_successful_signal.connect(self.storageView.searchButtonClicked)dropDialog.show()dropDialog.exec_()def userManage(self):UserDelete=UserManage(self)UserDelete.show()UserDelete.exec_()if __name__ == "__main__":app = QApplication(sys.argv)app.setWindowIcon(QIcon("./images/MainWindow_1.png"))app.setStyleSheet(qdarkstyle.load_stylesheet_pyqt5())mainMindow = AdminHome()mainMindow.show()sys.exit(app.exec_())
整段代码非常简短,逻辑也很清晰。
1、在setUpUI中有一个淘汰的button,一个添加的button
2、使用信号与槽机制,当点击添加按钮时,启用addBookDialog,点击淘汰按钮时,启用dropBookDialog
3、主页还有一个BookStorageViewer用于查看库存
注意:两个diolog和一个Table,我会在接下来的blog中给出
效果
虽然代码还不全,但也先看看最后效果吧~
最后附上链接
项目地址:github仓库链接
PyQt5搭建图书馆管理系统(4)——管理员主页设计相关推荐
- 图书馆管理系统,java课程设计,javaweb课程设计
采用Java+前端+servlet+mysql设计的图书馆管理系统. 源代码:https://download.csdn.net/download/lk888666/11892227 可以实现注册发送 ...
- 车辆管理系统c语言课程设计报告,图书馆管理系统C语言课程设计报告
湖北科技大学程序设计课程设计报告项目名称: 图书馆管理系统学生名称: 朱捷学生编号: 2014117241班级: 软工作者1411指导老师: 龚雄星日期: 2016.2.251项目描述设计图书管理系统 ...
- 试卷管理表mysql_图书馆管理系统-试卷表 - 数据库设计 - 数据库表结构 - 果创云...
-- 数据库大全:图书馆管理系统-试卷表 -- 来源:YesApi.cn CREATE TABLE `yesapi_t_paper` ( `id` bigint(20) unsigned NOT NU ...
- 图书馆管理系统——后台静态界面设计(类型增删改查)
LayUi:介绍 优点: layui(谐音:类UI) 是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的书写与组织形式,门槛极低,拿来即用. 入门技术 点击查看,Lay ...
- 高校图书馆管理系统的设计与实现
其他项目,点击作者主页 目录 1 系统简介 2 系统相关技术 2.1spring+springMVC+hibernate框架 2.2MySQL数据库 2.3bootstrap前端框架 3 需求分 ...
- php图书馆管理系统的设计与实现毕业设计-附源码
摘 要 大数据时代下,数据呈爆炸式地增长.为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势.在图书馆的要求下,开发一款整体式结构的图书馆管理 ...
- 大一java图书馆管理系统课程设计
大一java图书馆管理系统课程设计 代码仅供参考!!!仅供参考!!! 效果图如下 管理员用户名:123 密码123 密码错误的话进入项目resources文件夹有个LMS数据库,使用数据库客户端打开 ...
- c语言课程设计(图书馆管理系统)
大一c语言课程设计:图书馆管理系统. 图书管理系统,功能齐全拿来就能用 1.主界面 代码段 void main() { int n;Sleep(300);loop1:tongji(); printf( ...
- 图书馆管理系统的数据库设计
图书馆管理系统的数据库设计 --学生表 CREATE TABLE stu_info( --学号 stu_num varchar(10) primary key, --姓名 stu_name varch ...
最新文章
- 庆祝深圳.net俱乐部成立
- Java服务部署规范(内部使用)
- mysql 导入文件夹_MySQL-导入与导出
- html div父集子集,抛砖引玉css系列---根据父元素包含的子元素个数,实现不同的样式...
- 使用jquery获取url及url参数的方法及定义JQuery扩展方法
- 数值分析 python_数值分析python代码
- C/C++线程与多线程工作笔记003---C++指针引用和解引用
- STL应用--SORT自定义排序
- 枚举与常量需要注意的一个问题
- 论文笔记_S2D.48_2017-IEEE RAL_单视图和多视图深度融合
- Web渗透测试-Xss跨站脚本攻击(Cross Site Scripting)
- android手机恢复出厂设置,手机强制恢复出厂设置方法
- word插入公式及编号右对齐
- 计算机教室 设备负荷,设备建设标准和规范教室线缆布线.ppt
- linux 宽带连接
- 胡须清洗的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- matlab平摆线曲率参数方程,参数方程中曲线欣赏—平摆线解读.ppt
- Matplotlib可视化菜鸟教程
- 小程序实现h5页面的微信支付
- LeetCode刷题 | 唯一摩尔斯密码词