1.安装流程

1.1安装python

因为PyQt5的要求,Python需要安装python3,小编安装的是3.8.3版本的。

下载地址 :Python Releases for Windows | Python.org

安装的时候可以默认路径,占用内容也不大,而且安装也会快很多。安装完去环境变量添加python环境。切记如果是使用python3.8的需要将Python38的路径放在其他python版本之前。

添加完路径,win+R =>  cmd查看 python的版本是否对上。对不上后面安装pyqt5和pyqt5-tools工具时,就安装不到指定路径了。

1.2安装PyQt5和PyQt5-tools工具

pip install pyQt5 -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com

pip install pyQt5-tools -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com

安装完后 可在Python38的安装路径下\Lib\site-packages看到这几个文件

1.3vscode移植

去vscode安装PYQT Intergration插件,安装完在拓展设置里配置Pyuic:Cmd与Qtdesigner:Path路径

1.Pyuic:Cmd

路径一般是在你安装的python环境下的 \Scripts\pyuic5.exe

2.Qtdesigner:Path

一般是在你安装的python环境下的\Lib\site-packages\qt5_applications\Qt\bin\designer.exe

注意新版designer.exe不是在目录pyqt5_tools下而是qt5_applications目录下

 配置完可以去创建文件看看是否配置成功。创建.ui文件会弹出Qt Designer图形编辑界面,可以先随便创建一个Main Window,保存后,再去生成.py文件(.ui文件右键选择PYQT:Compile Form)

创建好文件,要想编译成功,还得需要选择下载了pyqt5对应版本的python解释器。

有两种方式执行.py文件:

1.vscode有上角的图形按钮。

2.命令行编译:python 文件名.py 

2.切换多界面

import sys
from PyQt5.QtWidgets import QMainWindow,QApplication,QWidget,QPushButton
from untitled import Ui_MainWindow as Window1#导入你写的界面类
from untitled2 import Ui_MainWindow2 as Window2#导入你写的界面类
 
class MyMainWindow(QMainWindow,Window1): #这里也要记得改
    def __init__(self,parent =None):
        super(MyMainWindow,self).__init__(parent)
        self.setupUi(self)
        self.pushButton.clicked.connect(self.open)
    def open(self):
        self.myWin2 = MyMainWindow2()#实例登录界面类
        self.myWin2.show()#显示登录窗口
        self.close()#关闭上面窗口
        
        

class MyMainWindow2(QMainWindow,Window2): #这里也要记得改
    def __init__(self):
        super(MyMainWindow2,self).__init__()
        self.setupUi(self)
        self.pushButton.clicked.connect(self.open)
    def open(self):
        self.myWin1 = MyMainWindow()#实例登录界面类
        self.myWin1.show()#显示登录窗口
        self.close()#关闭上面窗口

if __name__ == "__main__":
    app = QApplication(sys.argv)
    myWin = MyMainWindow()
    myWin.show()
    
    sys.exit(app.exec_())    

 3.python脚本将.ui文件转成.py文件并自动执行

import os
import os.path

dir=os.path.dirname(os.path.abspath(__file__))

#找出路径下所有的.ui文件
def listUiFile():
    list = []
    files = os.listdir(dir)
    for filename in files:
        #print(filename)
        if os.path.splitext(filename)[1] == '.ui':
            list.append(filename)
    
    return list
 
#把扩展名未.ui的转换成.py的文件
def transPyFile(filename):
    return os.path.splitext(filename)[0] + '.py'
 
#通过命令把.ui文件转换成.py文件
def runMain():
    list = listUiFile()
    os.chdir(dir)
    for uifile in list:
        pyfile = transPyFile(uifile)
        cmd = 'pyuic5 -o {pyfile} {uifile}'.format(pyfile=pyfile, uifile=uifile)
        os.system(cmd)
    os.system('python start.py')
        
if __name__ =="__main__":
    runMain()

Logo

一起探索未来云端世界的核心,云原生技术专区带您领略创新、高效和可扩展的云计算解决方案,引领您在数字化时代的成功之路。

更多推荐