PyQt4 Python GUI窗体应用程序

简介: 目录目录前言软件环境PyQT简介Setup PyCharmSetup SIPSetup PyQt4测试PyQt是否安装成功常见错误最后前言还是一句老话,公司要什么我就做什么。

目录

前言

还是一句老话,公司要什么我就做什么。这次来玩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,来画画。 :-)

相关文章
|
6天前
|
数据处理 UED Python
Python 进度条:告别枯燥等待,让你的程序动感十足!
Python 进度条:告别枯燥等待,让你的程序动感十足!
25 1
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【深度学习】Python之人工智能应用篇——音频生成技术
音频生成是指根据所输入的数据合成对应的声音波形的过程,主要包括根据文本合成语音(text-to-speech)、进行不同语言之间的语音转换、根据视觉内容(图像或视频)进行语音描述,以及生成旋律、音乐等。它涵盖了声音结构中的音素、音节、音位、语素等基本单位的预测和组合,通过频谱逼近或波形逼近的合成策略来实现音频的生成。 音频生成技术的发展主要依赖于深度学习模型,如循环神经网络(RNN)、长短时记忆网络(LSTM)、Transformer等。这些模型通过学习大量的音频数据,能够自动生成与人类发音相似甚至超越人类水平的音频内容。近年来,随着大规模预训练模型的流行,如GPT系列模型、BERT、T5等,
12 7
【深度学习】Python之人工智能应用篇——音频生成技术
|
2天前
|
机器学习/深度学习 人工智能 算法
【深度学习】python之人工智能应用篇——图像生成技术(二)
图像生成是计算机视觉和计算机图形学领域的一个重要研究方向,它指的是通过计算机算法和技术生成或合成图像的过程。随着深度学习、生成模型等技术的发展,图像生成领域取得了显著的进步,并在多个应用场景中发挥着重要作用。
15 9
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【自然语言处理】python之人工智能应用篇——文本生成技术
文本生成是指使用自然语言处理技术,基于给定的上下文或主题自动生成人类可读的文本。这种技术可以应用于各种领域,如自动写作、聊天机器人、新闻生成、广告文案创作等。
17 8
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】python之人工智能应用篇--代码生成技术
代码生成技术是人工智能与软件工程交叉领域的一项重要技术,它利用机器学习、自然语言处理和其他AI算法自动编写或辅助编写计算机程序代码。这一技术旨在提高编程效率、降低错误率,并帮助非专业开发者快速实现功能。以下是代码生成技术的概述及其典型应用场景。
15 6
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】python之人工智能应用篇--数字人生成技术
数字人生成技术是基于人工智能技术和计算机图形学技术创建的虚拟人物形象的技术。该技术能够模拟人类的外貌、声音、动作和交流能力,为多个领域带来创新的应用可能性。数字人的本质是将所有信息(数字和文字)通过数字处理(如计算机视觉、语音识别等)再进行表达的过程,形成具有人类形态和行为的数字产物。 数字人的生成涉及到多种技术,如3D重建技术,使用三维扫描仪扫描人的外观、五官等,并通过3D模型重建三维人;虚拟直播技术,使用计算机技术生成人物或实体,并且可以实时直播、录制;数字人体数据集技术,利用数据构建数字人模型以及训练虚拟现实引擎等
9 4
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【深度学习】python之人工智能应用篇——视频生成技术
视频生成技术是一种基于深度学习和机器学习的先进技术,它使得计算机能够根据给定的文本、图像、视频等单模态或多模态数据,自动生成符合描述的、高保真的视频内容。这种技术主要依赖于深度学习模型,如生成对抗网络(GAN)、自回归模型(Auto-regressive Model)、扩散模型(Diffusion Model)等。其中,GAN由两个神经网络组成:一个生成器用于生成逼真的图像或视频,另一个判别器用于判断生成的图像或视频是否真实。通过不断的对抗学习,生成器和判别器共同优化,以产生更高质量的视频。
9 2
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】python之人工智能应用篇——3D生成技术
在Python中,人工智能(AI)与3D生成技术的结合可以体现在多个方面,比如使用AI算法来优化3D模型的生成、通过机器学习来预测3D模型的属性,或者利用深度学习来生成全新的3D内容。然而,直接通过AI生成完整的3D模型(如从文本描述中生成)仍然是一个活跃的研究领域。 3D生成技术是一种通过计算机程序从二维图像或文本描述自动创建三维模型的过程。这一技术在近年来得到了飞速的发展,不仅为游戏、动画和影视行业带来了革命性的变革,还在虚拟现实、增强现实以及工业设计等多个领域展现出了巨大的应用潜力
7 2
|
2天前
|
机器学习/深度学习 人工智能 自然语言处理
【机器学习】python之人工智能应用篇--游戏生成技术
游戏生成技术,特别是生成式人工智能(Generative Artificial Intelligence, 简称Generative AI),正逐步革新游戏开发的多个层面,从内容创作到体验设计。这些技术主要利用机器学习、深度学习以及程序化内容生成(Procedural Content Generation, PCG)来自动创造游戏内的各种元素,显著提高了开发效率、丰富了游戏内容并增强了玩家体验。以下是生成式AI在游戏开发中的几个关键应用场景概述
6 2
|
3天前
|
前端开发 JavaScript 测试技术
Python中的GUI测试
【8月更文挑战第15天】本文探讨了Python中图形用户界面(GUI)测试的关键工具——Selenium与PyQt。Selenium专为Web应用测试设计,能模拟用户行为如点击和输入文本。PyQt则基于Qt框架,用于构建丰富的桌面应用程序及编写自动化测试脚本。
11 3