在这里介绍两种方法:
第一种:pycharm+PyQt5+python3.6的python GUI开发环境
1.1 下载
1、pycharm下载(下载Community版Version: 2017.3.3):
https://www.jetbrains.com/pycharm/download/#section=windows(https://www.jetbrains.com/pycharm/download/#section=windows)
2、PyQt5下载(版本PyQt5 5.10):
https://pypi.python.org/pypi/PyQt5/
PyQt5官方网站:
https://riverbankcomputing.com/software/pyqt/download5
3、Python3(版本Python3.6.4):
https://www.python.org/downloads/
1.2 安装过程
Python3.6安装:
首先安装python3.6,详细安装步骤请参考:http://www.cnblogs.com/bbn0111/p/6612911.htmlPyQt5安装:
在cmd命令提示符窗口中执行命令:
pip3 install PyQt5
pip3 install PyQt5-tools (这是Qt designer安装)
下载安装包并安装 (这也是Qt designer安装):PyQt5-5.6-gpl-Py3.5-Qt5.6.0-x64-2.exe
https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.6/PyQt5-5.6-gpl-Py3.5-Qt5.6.0-x64-2.exe/download
PyQt5安装完后,需要修改系统变量
QT_QPA_PLATFORM_PLUGIN_PATH
C:\Python36\Lib\site-packages\PyQt5\plugins <<这是PyQt5的plugins文件夹所在位置
三个都安装完毕之后,在pycharm中配置PyQt5和Python3.6:
具体配置过程请参考:
https://www.cnblogs.com/Skyyj/p/6822238.html
特别注意:设置“PyUIC”时的相关参数设置:
(1)选项Program:请选择您安装的python软件中的可执行文件exe。在这里我的python3.6安装在:D:\ProgramFiles64\目录下,则此项选择为:
D:\ProgramFiles64\Python364\python.exe
(2)参数Parameters:
-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
其中-m PyQt5.uic.pyuic直接输入,+空格,然后点击Insert Marrc按钮选择FileName,双击即可——输入-o——空格——从Insert Marrc选择FileNameWithoutExtension——在最后加上.py
(3)Working Directory工作路径:即你设计的GUI项目保存的路径,图中是自动选择FileDir(选择这个在pycharm中新建工程时,ui编译成py文件自动保存到工程目录下),也可自己设置,如在D:\ProgramFiles64\Python364\目录下建立一个工作空间文件夹名为demo,则框中输入:
D:\ProgramFiles64\Python364\demo
还需要设置一些参数(可选):
在pycharm的setting中的Project python364的Project Interpreter项选择您的python3.6中的可执行文件python.exe正确路径。不然在ui转py之后,无法运行py文件。
现在可以正式设计python GUI界面了:【可参看:http://blog.youkuaiyun.com/quanshengxixin/article/details/78775428】
打开pycharm——file——new project——输入工程名称——第一次选择open in new window中创建,可看到:
- 在项目上单击右键——选择External Tool——选择QtDesigner——则打开Qt软件界面——在Qt设计器中New From——选择Main Window——Creater。
- 然后在GUI窗口中添加自己的控件和按钮,完成之后,点击sava as:将此gui保存到pycharm新建的工程目录下为Hello.ui,关闭Qt设计器。
- 回到Pycharm界面,会在Project树形框中你的项目中看出Hello.ui文件。
- 最后将ui文件编译成py文件,方法:单击右键——选择External Tool——选择pyUIC——则会自动生成一个Hello.py文件在工程目录下;
- 打开Hello.py代码,将代码中的几条命名删除,才能正确运行。MainWindow.setCentralWidget(self.centralwidget)
MainWindow.setMenuBar(self.menubar)
MainWindow.setStatusBar(self.statusbar) - 然后添加主函数:
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
点击Run,出现错误:
Traceback (most recent call last):
File "D:/ProgramFiles64/Python364/PanGui/Hello.py", line 9, in <module>
from PyQt5 import QtCore, QtGui, QtWidgets
ModuleNotFoundError: No module named 'PyQt5'
完整代码如下:GUI窗口中随意添加了几个控件,这里我们不用管他具体内容,主要是测试GUI框架是否可运行。
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(800, 461)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.toolButton = QtWidgets.QToolButton(self.centralwidget)
self.toolButton.setGeometry(QtCore.QRect(160, 140, 52, 24))
self.toolButton.setObjectName("toolButton")
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setGeometry(QtCore.QRect(110, 200, 112, 34))
self.pushButton.setObjectName("pushButton")
self.checkBox = QtWidgets.QCheckBox(self.centralwidget)
self.checkBox.setGeometry(QtCore.QRect(90, 270, 105, 22))
self.checkBox.setObjectName("checkBox")
self.commandLinkButton = QtWidgets.QCommandLinkButton(self.centralwidget)
self.commandLinkButton.setGeometry(QtCore.QRect(90, 50, 263, 52))
self.commandLinkButton.setObjectName("commandLinkButton")
self.treeView = QtWidgets.QTreeView(self.centralwidget)
self.treeView.setGeometry(QtCore.QRect(280, 110, 256, 192))
self.treeView.setObjectName("treeView")
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 30))
self.menubar.setObjectName("menubar")
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
self.toolButton.setText(_translate("MainWindow", "..."))
self.pushButton.setText(_translate("MainWindow", "PushButton"))
self.checkBox.setText(_translate("MainWindow", "CheckBox"))
self.commandLinkButton.setText(_translate("MainWindow", "CommandLinkButton"))
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
解决方法:
第二种:Anaconda3+PyQt5+python3.6+Eric6的python GUI开发环境
1、Anaconda3下载(下载Anaconda3-5.0.1-Windows-x86_64.exe):
https://www.anaconda.com/download/#windows
2、PyQt5下载(版本PyQt5 5.10):
https://pypi.python.org/pypi/PyQt5/
3、Python3(版本Python3.6.4):
https://www.python.org/downloads/
4、下载Eric6
官方网站:http://eric-ide.python-projects.org/
下载地址:http://nchc.dl.sourceforge.net/project/eric-ide/eric5/stable/5.1.5/eric5-5.1.5.zip
中文包:http://nchc.dl.sourceforge.net/project/eric-ide/eric5/stable/5.1.5/eric5-i18n-zh_CN.
GB2312-5.1.5.zip
Python3的安装步骤同上。
Anaconda3安装:
官网下载:https://www.anaconda.com/
Eric6下载:http://eric-ide.python-projects.org/
0> 拷贝 pyqt5.10 和qsci 还有eric6.18 到 conda下的lib\site-package
1> ANACONDA prompt 启动 并cd到lib\site-package路径下, 用pip 安装 pyqt5.10.whl 再安装 qsci.whl
2>切换到eric6.18目录下. 用python install.py install 安装 eric
3> 搜索eric.pyw用python执行. 就可以运行eric了.
可视化安装步骤可参考:
http://blog.sina.com.cn/s/blog_642b4b710102w5u1.html
安装完毕后,直接双击Python安装目录里面的eric6.bat批处理文件或者C:\Python27\Lib\site-packages\eric6\eric6.py或者eric6.pyw可以运行Eric6.后缀为.py的文件会打开一个CMD窗口,后缀为.pyw的文件则没有,会直接打开eric6.
初次打开Eric6,一个配置窗口会首先出现,可以简单配置(或者以后在settings - Preferences配置)
配置如下:
在Eidtor下面,点击APIs,勾选上”Compile APIs automatically”,选择Language为”Python”,点击Add installed from APIs,选择eric6.api或其它你需要的APIs。然后点击下面的”Compile APIs”,这里会需要点时间。结束后点Apply。
然后点击Autocompletion,里面的三个都勾选上。然后再点击QScintilla,选”from Document and API files”,Apply 然后 OK。配置好后,就可以进行使用
Eric6了。
然后,在Eric的“设置参数选择”中修改Interface语言设置,把窗口使用的语言修改为中文,依次点击apply和ok。接着还是在设置菜单中单击导出首选
项,将我们的参数设置保存下来,方便以后恢复。
为了方便使用,可以将C:\Python27\Lib\site-packages\eric6\eric6.pyw文件右键发送到桌面快捷方式,便于启动eric。
简单实例应用可参考:
http://blog.youkuaiyun.com/weiaitaowang/article/details/52048462