目录

前言

还是一句老话,公司要什么我就做什么。这次来玩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:\development\Python34\Lib\site-packages

Step2. Make install SIP

i. (配置)RUN CMD Prompt

D:\development\Python34\Lib\site-packages\sip-4.17>python configure.py

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

D:\development\Python34\Lib\site-packages\sip-4.17>nmake 



iii. (安装)

D:\development\Python34\Lib\site-packages\sip-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,来画画。 :-)

PyQt4 Python GUI窗体应用程序的更多相关文章

  1. PYQT4 Python GUI 编写与 打包.exe程序

    工作中需要开发一个小工具,简单的UI界面可以很好的提高工具的实用性,由此开启了我的第一次GUI开发之旅,下面将自己学习的心得记录一下,也做为学习笔记吧!!! 参考:http://www.qaulau. ...

  2. 使用PyQt来编写第一个Python GUI程序

    原文:使用PyQt来编写第一个Python GUI程序 本文由 伯乐在线 - Lane 翻译,Daetalus 校稿.未经许可,禁止转载!英文出处:pythonforengineers.com.欢迎加 ...

  3. Python GUI - tkinter

    目录: Tkinter 组件 标准属性 几何管理 代码实例: 1. Label & Button 2. Entry & Text 3.Listbox列表 4.Radiobutton单选 ...

  4. Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) JAVA日志的前世今生 .NET MVC采用SignalR更新在线用户数 C#多线程编程系列(五)- 使用任务并行库 C#多线程编程系列(三)- 线程同步 C#多线程编程系列(二)- 线程基础 C#多线程编程系列(一)- 简介

    Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) 一.前言 由于本篇文章较长,所以下面给出内容目录方便跳转阅读,当然也可以用博客页面最右侧的文章目录导航栏进行跳转查阅. 一.前言 ...

  5. 八款常用的 Python GUI 开发框架推荐

    作为Python开发者,你迟早都会用到图形用户界面来开发应用.本文将推荐一些 Python GUI 框架,希望对你有所帮助,如果你有其他更好的选择,欢迎在评论区留言. Python 的 UI 开发工具 ...

  6. Python-1 IDLE(Python GUI)

    #1 运行Python: 开始 -> 程序 -> Python -> IDLE(Python GUI) 或 开始 -> 输入IDLE #2 各个菜单项及基本用法的帮助: Hel ...

  7. Python GUI with Tkinter (from youtube) 在youtube上能找到很多编程视频...

    Python GUI with Tkinter - 1 - Introduction以上链接是一个python tkinter视频系列的第一讲的链接.虽然英语不好,但是,程序还是看得懂的(照着做就可以 ...

  8. Python GUI开发环境的搭建

    原文:Python GUI开发环境的搭建 最近对Python的开发又来了兴趣,对于Python的开发一直停留在一个表面层的认识,玩的部分比较大. Python的入手简单,语法让人爱不释手,在网络通信方 ...

  9. Python GUI编程各种实现的对比

    Python GUI编程各种实现的对比 从 Python 语言的诞生之日起,就有许多优秀的 GUI 工具集整合到 Python 当中,这些优秀的 GUI 工具集,使得 Python 也可以在图形界面编 ...

随机推荐

  1. 2019-2020-1 20199319《Linux内核原理与分析》第六周作业

    系统调用的三层机制(下) 给MenuOS增加命令 首先进入LinuxKernel文件夹,删除menu目录,然后git clone克隆一个新版本的menu,新版本的menu中已经添加了time和time ...

  2. html 中 图片和文字一行 垂直居中对齐

    效果:      代码:<div><img src='img/point_icon.png' width='35px' height='35px' style='float: lef ...

  3. 基于SDN4.2.4的neo4j实例

    首先添加maven依赖 (1)SND的声明 <dependency> <groupId>org.springframework.data</groupId> < ...

  4. monkey自定义脚本

    自定义脚本稳定性测试 常规的monkey是执行随机的事件流,如果想让monkey测试某个特定的场景,这个时候需要自定义脚本. 用户需要先笔记好脚本再存放在手机上,通过启动monkey -f参数调用脚本 ...

  5. ab测试nginx Nginx性能优化

    转自:https://www.cnblogs.com/nulige/p/9369700.html 1.性能优化概述 在做性能优化前, 我们需要对如下进行考虑 1.当前系统结构瓶颈 观察指标 压力测试 ...

  6. selenium相关导入By、Keys、WebDriverWait、ActionChains,显示等待与隐式等待

    # -*- coding: utf-8 -*- """ @author: Dell Created on Tue Dec 24 12:33:56 2019 "& ...

  7. 29. ClustrixDB 分布式架构/并发控制

    介绍 ClustrixDB使用多版本并发控制(MVCC)和2阶段锁(2PL)的组合来支持混合的读写工作负载.在我们的系统中,读取器享受无锁快照隔离,而写入器使用2PL来管理冲突.并发控制的组合意味着读 ...

  8. Springboot 系列(十七)迅速使用 Spring Boot Admin 监控你的 Spring Boot 程序,支持异常邮件通知

    1. Spring Boot Admin 是什么 Spring Boot Admin 是由 codecentric 组织开发的开源项目,使用 Spring Boot Admin 可以管理和监控你的 S ...

  9. 一、让自己习惯C++

    写在前面 第一遍看<Effective C++>时,在准备暑期实习生的招聘,没有时间好好地捋一下,将一些要点记录下来.现在实习回来,重读此书,并记录一些要点,为今后的复习亦或是学习铺垫. ...

  10. Spark-PySpark sql各种内置函数

    _functions = { 'lit': 'Creates a :class:`Column` of literal value.', 'col': 'Returns a :class:`Colum ...