pyqt5
pyqt5学习笔记
班公湖里洗过脚
上马击狂胡,下马草军书
展开
-
PyQt5图书管理系统练习(12)主界面
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5设计逻辑在之前的所有代码中,其实都能看到signal相关的操作,这是PyQt自带的信号与通信机制.通过绑定特定的事件,来实现页面之间的跳转或者不同页面之间的通信菜单设计PyQT自带的有几种菜单栏选项,这里选择的是menuBar,通过添加action来添加菜单子选项,然后再通过action的setEnabled函数来实现菜单功能的显示与隐藏。在菜单栏中,有注册、修改密码、登录账户、退出原创 2020-10-08 00:09:37 · 720 阅读 · 0 评论 -
PyQt5图书管理系统练习(11)修改密码
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5设计逻辑修改密码的页面可以参照注册和登陆界面修改密码,主要需要用户输入学号, 原密码,新密码,确认密码实现代码逻辑如下:- 确认学号与原密码对应,否则报错- 输入新密码与确认密码 ,如果相同,则md5加密后放入数据库中- 注意设置输入校验这里使用对话框实现程序代码""""brief:修改密码date:2020-10-06author:chenyijunver原创 2020-10-06 22:16:36 · 1040 阅读 · 0 评论 -
PyQt5图书管理系统练习(10)借阅状态查询
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5分析功能上分为两块,已经归还书籍,未归还书籍在UI实现上,可以类比书籍查询系统,将这两部分都做成一个tabelView,结合数据库将其展现出来就好了代码""""brief:借阅状态查询date:2020-10-05author:chenyijunversion: python V3.8.1 pyqt5 V5.14.0"""import sysfrom PyQt5.QtW原创 2020-10-05 23:27:32 · 515 阅读 · 0 评论 -
PyQt5图书管理系统练习(9)借书还书功能
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5借书逻辑分析借书跟还书功能有点类似,都是采用的dialog来实现的,同时这个功能借鉴删除书籍的方法,只需输入BookID,就可以得到书籍全部信息。借阅时,需要处理的逻辑:- 用户输入的书号存在,就匹配信息给用户- 不存在就点击借阅,给出警告- 借阅书籍数已经达到上限5本 ,给出警告- 不允许借阅同样的书- 更新Book表信息的借阅次数,剩余可借阅书数- 在User_Boo原创 2020-10-05 23:21:28 · 2618 阅读 · 0 评论 -
PyQt5图书管理系统练习(8)普通用户界面
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5用户主页设计普通用户在登陆之后也有一个主页,这个主页功能也很明确借书 还书 查看借阅状态 浏览书库库存这个页面设计可以类比管理员界面,每一个功能做成一个单独的模块,然后将这四个功能集中一起,点击按钮跳转到对应的功能程序代码""""brief:用户管理date:2020-10-05author:chenyijunversion: python V3.8.1 pyqt5 V原创 2020-10-05 23:11:15 · 652 阅读 · 0 评论 -
PyQt5图书管理系统练习(7)用户管理
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5数据库初始化采用 第1节的操作分析对于用户管理,应该包含添加用户,删除用户,用户权限等操作的,但是为了实现简单,添加用户就用注册代替了,所以用户管理,添加用户这一块就省了。为了删除用户的同时保护数据库的完整性和约束,需要进行以下操作- 从User表删除该用户- 将该用户所借阅的所有书籍全部归还- 更新UI界面针对用户权限这一块,提升普通用户为管理员或者是将管理员转..原创 2020-10-04 22:37:55 · 430 阅读 · 0 评论 -
PyQt5图书管理系统练习(6)书籍信息查询
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5前言对于书籍查询,从数据库的设计可以看到,在这里我们只需要使用Book表的数据,就可以实现书籍信息的查询了在这个功能的实现上,主要实现了这些功能:- 模糊匹配- 按书名,作者,书号,出版社查询- 跳转页,翻页这次在代码中没有使用sqlite3,而是用了PyQT5自带的这个数据库模块,主要功能和sqlite3是一样的,但是使用起来稍微有一点区别。完整源码如下:""".原创 2020-10-03 23:34:09 · 815 阅读 · 0 评论 -
PyQt5图书管理系统练习(5)添加删除书籍
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5设计逻辑添加/删除功能都是一个对话框(Dialog),在这个界面填入必要的信息之后,执行数据库就可以了添加功能对于添加逻辑,需要添加以下信息- 书名- 书号- 作者名- 分类(分类已经规定,只需要选择对应的种类就可以了)- 出版社- 出版日期- 添加的数量初始化首先初始化数据库,然后初始化UI界面初始化UI界面书籍类别中规定好图书...原创 2020-10-02 23:59:22 · 760 阅读 · 0 评论 -
PyQt5图书管理系统练习(4)管理员界面实现
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5用户层面的包括管理员和一般用户,管理员可以添加删除书库中的书,而一般用户只能借书还书,所以两个界面还是有区别的.UI界面逻辑在管理员主页,主要有这么几个功能添加书籍,删除书籍,用户管理(权限管理,或者删除用户),查看书库中的书籍针对这么几个功能,我们需要做出如下设计:- 一个添加书本的Dialog,通过一个button启用- 一个淘汰书本的Dialog,通过一个button启用-原创 2020-10-01 23:45:13 · 1373 阅读 · 0 评论 -
PyQt5图书管理系统练习(3)登录界面实现
环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5前言登录界面与注册界面类似,登录的时候依赖数据库操作的文件initDB.py。登录页面逻辑注册页面布局,首先一个Label标题,然后依次5行控件帐 号:输入框密 码: 输入框 登录 重置登录逻辑,在点登录的时候,检查学号是否规范,密码是否合理,不合理的会给出相应的提示,如果都合理则查询数据库,检查当前帐号和密码是否匹配数据库的帐号和密码...原创 2020-09-10 16:32:38 · 1608 阅读 · 0 评论 -
PyQt5图书管理系统练习(2)注册界面实现
注册功能实现环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5前言在准备这一节前,得保证上一节得数据库操作已经成功了,这样才能顺顺利利得完成注册页面的设计。注册页面逻辑注册页面布局,首先一个“注册”的Label标签标题,然后依次5行控件学 号:输入框姓 名:输入框密 码: 输入框确认密码:输入框 注册注册逻辑,在点注册的时候,检查一下当前帐号是否存在,同时检查学号是否规范,...原创 2020-09-08 10:18:24 · 1259 阅读 · 1 评论 -
PyQt5图书管理系统练习(1)初始化数据库
初始化数据库环境系统:windows10系统编辑器:PyCharm编程语言:python3+pyqt5数据库操作图书管理系统所有的操作都依赖于数据库,本系统使用sqlite3数据库,python3自带这个数据库功能。数据库的初始化首先检测本地有没有这个数据库,没有的话直接初始化数据1,构造一个数据库类DbManager,为后面真正使用的3个类做准备,这个类有一些基本功能,创建,删除,切换库2,用户类UserDbManager,实现这么几个函数:初始化数据,添加普通用户,添.原创 2020-09-07 23:45:19 · 701 阅读 · 0 评论 -
pyqt5之俄罗斯方块
这一节我们创建一个俄罗斯方块俄罗斯方块俄罗斯方块游戏是有史以来最受欢迎的电脑游戏。最初的游戏是由俄罗斯设计和编程的程序员阿列克谢帕基特诺夫于1985年。此后,俄罗斯方块是几乎所有的计算机平台上可用在很多变化。俄罗斯方块称为积木拼图游戏。在这个游戏中,我们有七种不同形状叫tetrominoes:“s”形,Z-shape,t形,一个l型的空间,一个线,MirroredL-shape和正方形。...原创 2020-05-03 17:25:18 · 294 阅读 · 0 评论 -
pyqt5之自定义控件
自定义控件PyQt5有丰富的组件,但是肯定满足不了所有开发者的所有需求,PyQt5只提供了基本的组件,像按钮,文本,滑块等。如果你还需要其他的模块,应该尝试自己去自定义一些。自定义组件使用绘画工具创建,有两个基本方式:根据已有的创建或改进;通过自己绘图创建。Burning widget这个组件我们会在Nero,K3B,或者其他CD/DVD烧录软件中见到。import sys...原创 2020-05-03 17:18:51 · 1261 阅读 · 0 评论 -
pyqt5之绘画
绘图PyQt5绘图系统能渲染矢量图像、位图图像和轮廓字体文本。一般会使用在修改或者提高现有组件的功能,或者创建自己的组件。使用PyQt5的绘图API进行操作。绘图由paintEvent()方法完成,绘图的代码要放在QPainter对象的begin()和end()方法之间。是低级接口。文本涂鸦我们从画一些Unicode文本开始。import sysfrom PyQt5.QtW...原创 2020-05-03 17:14:51 · 545 阅读 · 0 评论 -
pyqt5之拖拽
拖拽在GUI里,拖放是指用户点击一个虚拟的对象,拖动,然后放置到另外一个对象上面的动作。一般情况下,需要调用很多动作和方法,创建很多变量。拖放能让用户很直观的操作很复杂的逻辑。一般情况下,我们可以拖放两种东西:数据和图形界面。把一个图像从一个应用拖放到另外一个应用上的实质是操作二进制数据。把一个表格从Firefox上拖放到另外一个位置 的实质是操作一个图形组。简单的拖放本例使用...原创 2020-05-01 18:21:54 · 1444 阅读 · 0 评论 -
pyqt5之控件2
控件2本章我们继续介绍PyQt5控件。这次的有QPixmap,QLineEdit,QSplitter,和QComboBox。图片QPixmap是处理图片的组件。本例中,我们使用QPixmap在窗口里显示一张图片。import sysfrom PyQt5.QtWidgets import (QWidget, QHBoxLayout, QLabel, QApplication)f...原创 2020-04-25 17:58:20 · 627 阅读 · 0 评论 -
pyqt5之控件1
控件1控件就像是应用这座房子的一块块砖。PyQt5有很多的控件,比如按钮,单选框,滑动条,复选框等等。在本章,我们将介绍一些很有用的控件:QCheckBox,ToggleButton,QSlider,QProgressBar和QCalendarWidget。QCheckBoxQCheckBox组件有俩状态:开和关。通常跟标签一起使用,用在激活和关闭一些选项的场景。import s...原创 2020-04-25 17:44:00 · 202 阅读 · 0 评论 -
pyqt5之对话框
对话框对话框是一个现代GUI应用不可或缺的一部分。对话是两个人之间的交流,对话框就是人与电脑之间的对话。对话框用来输入数据,修改数据,修改应用设置等等。输入文字QInputDialog提供了一个简单方便的对话框,可以输入字符串,数字或列表。import sysfrom PyQt5.QtWidgets import (QWidget, QPushButton, QLineEdit...原创 2020-04-25 17:34:18 · 211 阅读 · 0 评论 -
pyqt5之事件和信号
事件所有的应用都是事件驱动的。事件大部分都是由用户的行为产生的,当然也有其他的事件产生方式,比如网络的连接,窗口管理器或者定时器等。调用应用的exec_()方法时,应用会进入主循环,主循环会监听和分发事件。在事件模型中,有三个角色:事件源 事件 事件目标事件源就是发生了状态改变的对象。事件是这个对象状态改变的内容。事件目标是事件想作用的目标。事件源绑定事件处理函数,然后作用于事件...原创 2020-04-25 17:08:33 · 554 阅读 · 0 评论 -
pyqt5之菜单和工具栏
菜单和工具栏这个章节,我们会创建状态栏、菜单和工具栏。菜单是一组位于菜单栏的命令。工具栏是应用的一些常用工具按钮。状态栏显示一些状态信息,通常在应用的底部。主窗口QMainWindow提供了主窗口的功能,使用它能创建一些简单的状态栏、工具栏和菜单栏。主窗口是下面这些窗口的合称,所以教程在最下方。状态栏状态栏是用来显示应用的状态信息的组件。""""brief:状态栏...原创 2020-04-19 22:47:21 · 2567 阅读 · 0 评论 -
pyqt5之布局管理
布局管理在一个GUI程序里,布局是一个很重要的方面。布局就是如何管理应用中的元素和窗口。有两种方式可以搞定:绝对定位和PyQt5的layout类绝对定位每个程序都是以像素为单位区分元素的位置,衡量元素的大小。所以我们完全可以使用绝对定位搞定每个元素和窗口的位置。但是这也有局限性:元素不会随着我们更改窗口的位置和大小而变化。 不能适用于不同的平台和不同分辨率的显示器 更改应用字体...原创 2020-04-19 21:41:58 · 437 阅读 · 0 评论 -
pyqt5之基本窗口
例1,简单的窗口这个简单的小例子展示的是一个小窗口。但是我们可以在这个小窗口上面做很多事情,改变大小,最大化,最小化等,这需要很多代码才能实现。这在很多应用中很常见,没必要每次都要重写这部分代码,Qt已经提供了这些功能。PyQt5是一个高级的工具集合,相比使用低级的工具,能省略上百行代码。""""fileName:simple.pybrief:一个PyQt5的简单的例子author...原创 2020-04-19 21:28:16 · 1687 阅读 · 0 评论 -
pyqt5显示日期与时间
PyQt5具有QDate,QDateTime,QTime类来处理日期和时间。 QDate是用于使用公历中的日历日期的类。 它具有确定日期,比较或处理日期的方法。 QTime类使用时钟时间。 它提供了比较时间,确定时间的方法以及其他各种时间操纵方法。 QDateTime是将QDate和QTime对象都组合到一个对象中的类。1. 当前日期和时间PyQt5具有currentDate(),curr...原创 2020-04-19 21:02:07 · 3374 阅读 · 0 评论