zoukankan      html  css  js  c++  java
  • PyQt4 Python GUI窗体应用程序

    目录

    前言

    还是一句老话,公司要什么我就做什么。这次来玩Python的GUI编程,做一个用于监控警报、简化SOP的窗体应用程序。首先当然是部署开发环境了,这次用PyCharm5+Python3.4+PyQt4(QT Designer)

    软件环境

    • 系统
      • Win10
    • 软件
      • Python 3.4.3
      • PyCharm 5.0.4
      • PyQt 4
      • IPython 4.0.0
      • Powershell 3.0

    PyQT简介

    PyQt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是目前最强大的库之一,Linux爱好者应该非常熟悉了,KDE就是应用QT开发的。PyQt实现了一个Python模块集,它有超过300类,将近6000个函数和方法。它是一个多平台的工具包,可以运行在所有主要操作系统上,包括UNIX,Windows和Mac。 PyQt采用双许可证,开发人员可以选择GPL和商业许可。在此之前,GPL的版本只能用在Unix上,从PyQt的版本4开始,GPL许可证可用于所有支持的平台。
    因为可用的类有很多,他们被分成几个模块。
    QtCore模块包含核心的非GUI功能。该模块用于时间、文件和目录、各种数据类型、流、网址、MIME类型、线程或进程。
    QtGui模块包含图形组件和相关的类,例如按钮、窗体、状态栏、工具栏、滚动条、位图、颜色、字体等。
    QtNetwork模块包含了网络编程的类,这些类允许编写TCP/IP和UDP的客户端和服务器,他们使网络编程更简单,更轻便。
    QtXml模块包含使用XML文件的类,这个模块提供了SAX和DOM API的实现。
    QtSvg模块提供显示的SVG文件的类。可缩放矢量图形(SVG)是一种用于描述二维图形和图形应用程序的XML语言。
    QtOpenGL模块使用OpenGL库渲染3D和2D图形,该模块能够无缝集成Qt的GUI库和OpenGL库。
    QtSql模块提供用于数据库的类。

    Setup PyCharm

    下载地址,点这里
    双击exe执行程序一路Next即可。
    注意选择Python的安装路径、设置自己喜欢的主题风格。
    安装成功后打开PyCharm,并Create New Project
    这里写图片描述

    Setup SIP

    SIP用于将PyQt的C++库映射到Python,PyQt4中内嵌了SIP。较低版本需要安装SIP后才能在Python中调用PyQt。这里我们也安装一下(虽然无所谓装不装)。
    下载地址,点这里
    Step1. Copy sip folder with /sip-4.17/ into D:developmentPython34Libsite-packages
    Step2. Make install SIP
    i. (配置)RUN CMD Prompt

    D:developmentPython34Libsite-packagessip-4.17>python configure.py

    ii. (编译)借用Visual Studio的Developr Command Prompt中的umake指令来编译

    D:developmentPython34Libsite-packagessip-4.17>nmake 

    这里写图片描述
    iii. (安装)

    D:developmentPython34Libsite-packagessip-4.17>nmake install

    这里写图片描述

    SIP Install Finish

    Setup PyQt4

    下载地址,点这里
    PyQt跨平台,主流系统的installer都有。
    对于Windows来说,只需要下载exe格式的文件即可。在这个exe文件中,已经包含了如下模块:

    • PyQt4
    • Qt (with database support for MySQL, PostgreSQL, SQLite3 and ODBC)
    • Qt Designer
    • Qt Linguist
    • Qt Assistant
    • pyuic4
    • pylupdate4
    • lrelease
    • pyrcc4
    • QScintilla

    注意Python的版本和位数,Example
    这里写图片描述
    我的是Python 3.4.3 win32

    Note that the Qt documentation is not included.
    PyQt4-4.11.4-gpl-Py3.4-Qt4.8.7-x64.exe Windows 64 bit installer
    PyQt4-4.11.4-gpl-Py3.4-Qt4.8.7-x32.exe Windows 32 bit installer
    PyQt4-4.11.4-gpl-Py3.4-Qt5.5.0-x64.exe Windows 64 bit installer
    PyQt4-4.11.4-gpl-Py3.4-Qt5.5.0-x32.exe Windows 32 bit installer
    PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x64.exe Windows 64 bit installer
    PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x32.exe Windows 32 bit installer

    选择python解析器的安装路径
    这里写图片描述

    测试PyQt是否安装成功

    New Project PyQT_demo –> New file TestPyqt.py

    import sys
    from PyQt4 import QtGui             #QtGui是PyQt最基本的GUI绘图组件类库
    
    app = QtGui.QApplication(sys.argv)  #创建QApplication的对象app,每个PyQt程序用都要包含有一个QApplication对象
    widget = QtGui.QWidget()            #创建QWidget对象widget
    widget.resize(250, 150)             #设定widget对象的resize属性值,用于指定默认部件的Size
    widget.setWindowTitle('PyQt')       #设定部件的Title
    widget.show()                       #Call widget对象的show()方法,即显示部件
    sys.exit(app.exec_())               #最后一行是这个demo程序的主循环,也是事件处理的调用。

    Run:
    这里写图片描述

    成功弹出窗口,表示PyQt安装成功

    常见错误

    这里写图片描述

    这里写图片描述

    Solution
    PyQt Version与当前的Python Version不一致。卸载PyQt后,选择正确的版本后继续安装。

    最后

    下次玩QT Designer,来画画。 :-)

  • 相关阅读:
    编写安全检测脚本
    编写监控脚本
    编写一键部署软件脚本
    awk扩展应用
    sed基本用法
    字符串截取及切割,正则表达式,expect预期交互
    For,while,case,shell循环结构
    mybatis使用associaton进行分步查询
    mybatis中封装结果集常见示例
    Mybatis获取数据库自增主键
  • 原文地址:https://www.cnblogs.com/jmilkfan-fanguiju/p/7533727.html
Copyright © 2011-2022 走看看