夏天/isummer

Sun of my life !Talk is cheap, Show me the code! 追风赶月莫停留,平芜尽处是春山~

博客园 首页 新随笔 联系 管理

  PyQt5+python3+pycharm开发环境配置

1. 安装Python, 

  我们使用Python3进行安装, 原因不多讲。

  安装好后,我们需要在系统目录中设置Python3的安装目录,这样在Windows系统中,就可以进行使用Python3的各种功能

  最规范的形式是:

  添加一个系统环境变量,Python3_Dir, 然后将该环境变量添加到系统path中,如下:

  

  或者,在安装Python3的时候,已经自动添加到系统环境变量中了。

   

 

 

2. 安装PyQt,

  官网:https://riverbankcomputing.com/software/pyqt/download5

  提供了三种安装方法:

  (1)下载源码,然后编译

  (2)利用Python的安装工具Pip,安装Python的PyQt模块

   pip3 install PyQt5 

  注意:对于Python内置的查找镜像, 一般是国外网站,对于国内的用户,则需要设置查找国内的镜像地址,这样安装的速度快:

 

pip3 install PyQt5 -i https://pypi.douban.com/simple

  (3)安装qt的工具包:pyqt tool 的工具包:

  这是Qt的常用工具。

pip install PyQt5-tools -i https://pypi.douban.com/simple

  上述两项后,在Python的安装目录中,的lib/site-packages/的目录下,由Pyqt5以及pyqt5_tools的模块:

如下图:  

   

  修改环境变量,确保PyQt5的常用命令可以在系统进行查找到,因此需要将Pyqt5-tools的文件夹添加到系统变量中:

  添加

   

  添加到系统环境变量中:  

  

 

  测试是否安装成功:

  保存文件名:test.py

import sys     
from PyQt5 import QtWidgets 
 
app = QtWidgets.QApplication(sys.argv)
widget = QtWidgets.QWidget()
widget.resize(360, 360)
widget.setWindowTitle("hello, pyqt5")
widget.show()
sys.exit(app.exec_())

  在window的命令行窗口运行如下:

  python test.py

   出现以下窗口,则测试成功!!!

  

 

3. 安装Pycharm IDE, 进行配置,并用pycharm来开发PyQt5.

  参考:

 https://www.cnblogs.com/Skyyj/p/6822238.html

 

配置Pycharm, 快捷方式: ctrl+alt+s 打开配置窗口, 点开external tools, 配置:

  

 

 (1)配置PyQt的qtdesigner 

  是为了:在朋友charm里面能够打开qt designer文件, 然后生成qt的文件, 然后将qt文件转换成python语言的软件文件

  在Setting配置也中,tool的标签页中,配置extern tool的配置:新建一个tool的配置,如下图:

  

 

1.  配置:Name,可以自己定义,一般按照原来的名字设置即可。QtDesigner,用于在Exter Tool的选项中的自选项内容

2.    配置:Programe, 则选择PyQt安装目录中 designer.exe 的路径

3.    配置:Working Directory: 这个是工作目录,用Macro来方便设置,$(FileDir)

 

 

 

   

 (2)配置PyUIC, 

  这个主要用来将Qt的界面UI文件转化为Py代码,这样,就能够在python文件中调用PyUIC编译后的 UI python文件。

  配置:

1. Name: PyUIC, 

2. Program:     D:\Program Files\Python37(32)\python.exe, 一般会自动设置,这里是Python的环境,即python.exe目录

3. Parameters: -m PyQt5.uic.pyuic  $FileName$ -o $FileNameWithoutExtension$.py

3. Working Directory: 如果设置成为:$(FileDir), 则会将designer的ui文件,转化成py文件,并在和ui文件相同目录中生成转化后的py文件。

  

  注意:

  program的配置是,指定python.exe, 这样,对于参数:parameters,则可以看出是将文件名转化为 名字.py文件,这样可以用python来执行。

 

4. pycharm测试:

(1)新建一个PurePython项目,

  注意:

   一定要选中: inherit global site-packages, 否则,在以下目录中的外部库都不能引用:

  

1. 项目的位置: Location配置

2. 配置:inherit global site-packages 

  

  配置成功后,如下图:

  

 

(2)通过pycharm来打开qt designer, 如下图:

 

  

  

 

(3)打开qtdesigner后, 创建一个qtUI文件,并保存为如下:

  

  对应在文件目录结构如下图:

  

 

  然后,

  保存文件之后,关闭qt designer,在pycharm里看到刚保存ui文件,选中文件点击右键,选择PyUIC来转换成py代码

  用PyUIC 外部配置编译文件,将UI我呢见转化为python文件

  

 

 

  则在相同的目录位置,出现如下编译后的pychon文件

  即:完全把UI文件,转化为了python语言描述的UI,包含对应的pyQt模块等等

 

# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'NSAPP.ui'
#
# Created by: PyQt5 UI code generator 5.11.3
#
# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        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, 800, 26))
        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"))

 

 

 

因为,我们建立的QMainWindow类型的对话框,需要写main函数,来调用这个UI,并执行

 船舰main.py文件如下:

import sys
import NSAPP

from PyQt5.QtWidgets import QApplication, QMainWindow

if __name__ == '__main__':
    app = QApplication(sys.argv)
    mainWindow = QMainWindow()


    NSUI = NSAPP.Ui_MainWindow()
    NSUI.setupUi(mainWindow)

    mainWindow.show()

    sys.exit(app.exec())

  注意:

(1)注意:创建对象是函数调用

mainWindow = QMainWindow()

   快捷方式

  ctrl+shift + F 10, 则执行main.py,如下图所示:

  

 

   

 

 

或者直接创建下列可执行python文件,

  也可以直接执行:

# FileName : PyQtDemo.py
# Author   : icmzn
# DateTime : 2018/2/1 11:07
# SoftWare : PyCharm


from PyQt5 import QtWidgets, QtGui
import sys

app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QWidget();
window.show()
sys.exit(app.exec_())

 

此外:还可以配置external tooll的 :

(1)assistant 

 该文件的目录位置:

  D:\Program Files\Python37(32)\Lib\site-packages\pyqt5_tools\assistant.exe

  

 

 (2)linguist

  用于语言翻译的工具

  目录位置:

D:\Program Files\Python37(32)\Lib\site-packages\pyqt5_tools\linguist.exe

 

 

 (3)pyrcc

  在PyQt中,用pyrcc 把图片,文本,等打包成python 文件后的工具,暂时用不到,后续同样配置“

   参数如下配置:

$FileName$ -o $FileNameWithoutExtension$_rc.py

 

 

 配置好如下,这样,可以直接在pycharm中进行调用。

  

 

endl;

  

  

posted on 2018-12-24 00:56  夏天/isummer  阅读(602)  评论(0编辑  收藏  举报