赞
踩
锋哥原创的PyQt6图书管理系统视频教程:
PyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~_哔哩哔哩_bilibiliPyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~共计24条视频,包括:PyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~、第2讲 登录功能UI设计实现、第3讲 数据库操作工具包dbUtil.py封装等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV18t4y1R7Qp/因为主界面是需要菜单和状态栏的,所以我们新建的时候,选Main Window
设计菜单:
菜单三个主菜单,分别是 图书管理,图书类别管理,系统设置。
图书管理下面有 图书添加 图书信息管理 子菜单
图书类别管理下面有 图书类别添加 图书类别信息管理 子菜单
系统设置下面有 修改密码 安全退出 | 关于作者 锋哥招收Python学员啦 子菜单
我们把设计好的“主界面”UI文件,用PyUIC,转换成Python文件。
- # Form implementation generated from reading ui file '主界面.ui'
- #
- # Created by: PyQt6 UI code generator 6.4.2
- #
- # WARNING: Any manual changes made to this file will be lost when pyuic6 is
- # run again. Do not edit this file unless you know what you are doing.
-
-
- from PyQt6 import QtCore, QtGui, QtWidgets
-
-
- class Ui_MainWindow(object):
- def setupUi(self, MainWindow):
- MainWindow.setObjectName("MainWindow")
- MainWindow.resize(1420, 1148)
- MainWindow.setAcceptDrops(False)
- icon = QtGui.QIcon()
- icon.addPixmap(QtGui.QPixmap("../images/logo.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- MainWindow.setWindowIcon(icon)
- self.centralwidget = QtWidgets.QWidget(parent=MainWindow)
- self.centralwidget.setObjectName("centralwidget")
- MainWindow.setCentralWidget(self.centralwidget)
- self.menubar = QtWidgets.QMenuBar(parent=MainWindow)
- self.menubar.setGeometry(QtCore.QRect(0, 0, 1420, 21))
- self.menubar.setObjectName("menubar")
- self.menu = QtWidgets.QMenu(parent=self.menubar)
- self.menu.setObjectName("menu")
- self.menu_2 = QtWidgets.QMenu(parent=self.menubar)
- self.menu_2.setObjectName("menu_2")
- self.menu_3 = QtWidgets.QMenu(parent=self.menubar)
- self.menu_3.setObjectName("menu_3")
- MainWindow.setMenuBar(self.menubar)
- self.statusbar = QtWidgets.QStatusBar(parent=MainWindow)
- self.statusbar.setObjectName("statusbar")
- MainWindow.setStatusBar(self.statusbar)
- self.action = QtGui.QAction(parent=MainWindow)
- icon1 = QtGui.QIcon()
- icon1.addPixmap(QtGui.QPixmap("../images/add.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- self.action.setIcon(icon1)
- self.action.setObjectName("action")
- self.action_2 = QtGui.QAction(parent=MainWindow)
- icon2 = QtGui.QIcon()
- icon2.addPixmap(QtGui.QPixmap("../images/bookManager.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- self.action_2.setIcon(icon2)
- self.action_2.setObjectName("action_2")
- self.action_3 = QtGui.QAction(parent=MainWindow)
- self.action_3.setIcon(icon1)
- self.action_3.setObjectName("action_3")
- self.action_4 = QtGui.QAction(parent=MainWindow)
- icon3 = QtGui.QIcon()
- icon3.addPixmap(QtGui.QPixmap("../images/bookTypeManager.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- self.action_4.setIcon(icon3)
- self.action_4.setObjectName("action_4")
- self.action_5 = QtGui.QAction(parent=MainWindow)
- icon4 = QtGui.QIcon()
- icon4.addPixmap(QtGui.QPixmap("../images/password.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- self.action_5.setIcon(icon4)
- self.action_5.setObjectName("action_5")
- self.action_6 = QtGui.QAction(parent=MainWindow)
- icon5 = QtGui.QIcon()
- icon5.addPixmap(QtGui.QPixmap("../images/exit.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- self.action_6.setIcon(icon5)
- self.action_6.setObjectName("action_6")
- self.action_8 = QtGui.QAction(parent=MainWindow)
- icon6 = QtGui.QIcon()
- icon6.addPixmap(QtGui.QPixmap("../images/about.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- self.action_8.setIcon(icon6)
- self.action_8.setObjectName("action_8")
- self.action_Python = QtGui.QAction(parent=MainWindow)
- icon7 = QtGui.QIcon()
- icon7.addPixmap(QtGui.QPixmap("../images/me.png"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
- self.action_Python.setIcon(icon7)
- self.action_Python.setObjectName("action_Python")
- self.menu.addAction(self.action)
- self.menu.addAction(self.action_2)
- self.menu_2.addAction(self.action_3)
- self.menu_2.addAction(self.action_4)
- self.menu_3.addAction(self.action_5)
- self.menu_3.addAction(self.action_6)
- self.menu_3.addSeparator()
- self.menu_3.addAction(self.action_8)
- self.menu_3.addAction(self.action_Python)
- self.menubar.addAction(self.menu.menuAction())
- self.menubar.addAction(self.menu_2.menuAction())
- self.menubar.addAction(self.menu_3.menuAction())
-
- self.retranslateUi(MainWindow)
- QtCore.QMetaObject.connectSlotsByName(MainWindow)
-
- def retranslateUi(self, MainWindow):
- _translate = QtCore.QCoreApplication.translate
- MainWindow.setWindowTitle(_translate("MainWindow", "图书管理系统"))
- self.menu.setTitle(_translate("MainWindow", "图书管理"))
- self.menu_2.setTitle(_translate("MainWindow", "图书类别管理"))
- self.menu_3.setTitle(_translate("MainWindow", "系统设置"))
- self.action.setText(_translate("MainWindow", "图书添加"))
- self.action_2.setText(_translate("MainWindow", "图书信息管理"))
- self.action_3.setText(_translate("MainWindow", "图书类别添加"))
- self.action_4.setText(_translate("MainWindow", "图书类别信息管理"))
- self.action_5.setText(_translate("MainWindow", "修改密码"))
- self.action_6.setText(_translate("MainWindow", "安全退出"))
- self.action_8.setText(_translate("MainWindow", "关于作者"))
- self.action_Python.setText(_translate("MainWindow", "锋哥招收Python学员啦"))
我们在项目目录下,新建main.py,作为主界面模块代码,然后把上面ui文件生成的代码贴到main.py里面去,我们进行二次开发。
为了让代码能运行起来,我们需要把类继承的Object改成QMainWindow
以及加下构造方法:
- # 构造方法
- def __init__(self):
- super(Ui_MainWindow, self).__init__()
- self.setWindowFlag(QtCore.Qt.WindowType.MSWindowsFixedSizeDialogHint) # # 只显示最小化和关闭按钮
- self.setupUi(self)
和前面登录一样,这个图片路径也是要修改的。
最后再加一个Main方法:
- if __name__ == '__main__':
- try:
- app = QApplication(sys.argv)
- main = Ui_MainWindow()
- main.show()
- sys.exit(app.exec())
- except Exception as e:
- print(e)
运行测试:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。