很多小伙伴在学习PyQt时不知道如何搭建环境,读完下面内容,也许会对你有所帮助。
1.进入官网下载python3.6.4版本(可以根据自己的需求下载对应版本),官网:https://www.python.org/getit/
根据自己的实际情况选择,我的电脑是64位的,选择如下:
2.安装好后配置python环境变量,也可以在安装时勾选下下面的选项,即可自动配置环境变量。
3.配置好环境变量后,cmd进入命令行,输入python,如果输出如图所示,那么python安装完成。
1.搭建好python环境后,在cmd输入以下代码,使用命令下载对应的PyQt以及PyQt_tools,这里需要注意,如果选择网页下载PyQt,可能会导致PyQt的版本与python的版本不兼容,所以保险的办法是选择命令下载,会自动下载与安装的python相适应的版本。
pip3 install PyQt5
pip3 install PyQt5-tools
如果输入pip3 install PyQt5出现下列错误:
则在命令行输入:
python -m pip install --upgrade pip
如下图所示:
这时升级好pip后,再输入pip3 install PyQt5,如下图,则安装成功。
下载安装好pycharm后,在File----setting-----Tools----External Tools中新建QTdesigner配置,如下图所示:
如上图第三步,点击+后,选择如下:
点击OK后,QTdesigner配置完成。
配置好QTdesigner后,配置PyUIC(可以直接将.ui文件转为.py文件的工具)。 pyuic5.exe文件一般在python的安装路径下,如下图:
Arguments处填入这一行
$FileName$ -o $FileNameWithoutExtension$.py
Working directory类似的选择如下图所示:
点击OK后,PyUIC配置完成。
配置好PyUIC后,继续点击“+ " 新建配置PyRcc。pyrcc5.exe文件一般在python的安装路径下,如下图:
Arguments处填入这一行
$FileName$ -o $FileNameWithoutExtension$_rc.py
Working directory处类似的选择。
点击OK后,配置完成。
配置成功后,出现如下项,则配置成功。
同时在pycharm界面的Tools中出现以下,则配置成功:
1.点击QTdesigner,如下图:
2.进入QTdesigner中,新建如下界面:
3.保存后,在python文件夹中出现.ui文件
4.右击该文件,选择PyUIC,将.ui文件转为.py文件,如下图:
文件夹中出现与.ui文件同名的.py文件
在该文件中添加如下代码后,点击run运行.py文件
import sys from PyQt5 import QtCore, QtGui, QtWidgets class Ui_Dialog(object): def setupUi(self, Dialog): Dialog.setObjectName("Dialog") Dialog.resize(417, 386) self.pushButton = QtWidgets.QPushButton(Dialog) self.pushButton.setGeometry(QtCore.QRect(130, 150, 131, 71)) font = QtGui.QFont() font.setPointSize(22) self.pushButton.setFont(font) self.pushButton.setObjectName("pushButton") self.retranslateUi(Dialog) QtCore.QMetaObject.connectSlotsByName(Dialog) def retranslateUi(self, Dialog): _translate = QtCore.QCoreApplication.translate Dialog.setWindowTitle(_translate("Dialog", "Dialog")) self.pushButton.setText(_translate("Dialog", "测试")) # ui文件的第一种使用方法:直接使用 if __name__ == "__main__": mypro = QtWidgets.QApplication(sys.argv) mywin = QtWidgets.QMainWindow() thisui = Ui_Dialog() thisui.setupUi(mywin) mywin.show() sys.exit(mypro.exec_())
运行成功!
end…