Vscode-PyQt5开发篇1
【代码】Vscode-PyQt5开发学习。
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()
更多推荐
所有评论(0)