1.Qt5的安装
可参考一些博客如:Python 小白从零开始 PyQt5 项目实战(2)菜单和工具栏_pyqt 二级菜单-CSDN博客
2.Qt5的界面显示
3.新建一个工具栏并打开本地文件方法
(1)在Qt5界面右下角有个“动作编辑器”,点击后新建如下图所示,新建完成以后鼠标选中拖到新建好的工具栏中。工具栏建法:直接鼠标右键会出现“添加工具栏”。
(2)添加信号连接线可参考上述博客内容,新建函数openfile()
(3)点击右下角信号/槽编辑器建立信号连接
(4)将ui转化成py文件,其中py内容如下zuiho
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(1098, 816)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 1098, 30))
self.menubar.setObjectName("menubar")
self.menu = QtWidgets.QMenu(self.menubar)
self.menu.setObjectName("menu")
self.menu_2 = QtWidgets.QMenu(self.menubar)
self.menu_2.setObjectName("menu_2")
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.toolBar = QtWidgets.QToolBar(MainWindow)
self.toolBar.setObjectName("toolBar")
MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
self.action = QtWidgets.QAction(MainWindow)
self.action.setObjectName("action")
self.action_2 = QtWidgets.QAction(MainWindow)
self.action_2.setObjectName("action_2")
self.menubar.addAction(self.menu.menuAction())
self.menubar.addAction(self.menu_2.menuAction())
self.toolBar.addAction(self.action)
self.toolBar.addAction(self.action_2)
self.retranslateUi(MainWindow)
self.action.triggered.connect(MainWindow.openfile) # type: ignore
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
self.menu.setTitle(_translate("MainWindow", "文件"))
self.menu_2.setTitle(_translate("MainWindow", "退出"))
self.toolBar.setWindowTitle(_translate("MainWindow", "toolBar"))
self.action.setText(_translate("MainWindow", "打开文件"))
self.action_2.setText(_translate("MainWindow", "保存文件"))
(5)主函数如下
from PyQt5.QtWidgets import QApplication, QMainWindow
import sys
from PyQt5.QtWidgets import QFileDialog
from third import Ui_MainWindow # 导入图像界面设计文件
class MyMainWindow(QMainWindow, Ui_MainWindow): # 继承 QMainWindow类和 Ui_MainWindow界面类
def __init__(self, parent=None):
super(MyMainWindow, self).__init__(parent) # 初始化父类
self.setupUi(self) # 继承 Ui_MainWindow 界面类
def openfile(self):
self.action = QFileDialog.getExistingDirectory(self,"choose directory",'D:\pyCharm\test')
return
if __name__ == '__main__':
app = QApplication(sys.argv) # 在 QApplication 方法中使用,创建应用程序对象
myWin = MyMainWindow() # 实例化 MyMainWindow 类,创建主窗口
myWin.show() # 在桌面显示控件 myWin
sys.exit(app.exec_()) # 结束进程,退出程序
其中最关键的几个点:
1. from third import Ui_MainWindow # 导入图像界面设计文件-------其中third是你保存的ui文件的名称
2.使用了ui中新建的函数openfile()
3.使用了打开文件的函数
QFileDialog.getExistingDirectory(self,"choose directory",'D:\pyCharm\test')
该函数使用时首先在程序开头要
from PyQt5.QtWidgets import QFileDialog
第二要理解该函数里面的三个参数如何使用
第三文件路径必须要写对,单引号,\都要注意,否则运行不出来
第四路径要传给self.action,这里写错也运行不出来