1.安装PyQT5 以及QT Designer工具包,这里使用清华大学的源,安装快一些。

pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install PyQt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple

2.安装PyQt5 会根据Python的安装路径自动进行安装,不需要修改,安装好以后,测试安装是否成功。写下面的代码,运行看运行是否正确。

import sys
from PyQt5 import QtWidgets
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
w = QtWidgets.QWidget()
w.resize(400, 200)
w.setWindowTitle("hello lyshark")
w.show()
exit(app.exec_())

接着直接双击运行,如果成功执行,那么会看到一个窗体生成了。

3.打开QT设计师designer.exe,一般路径是:\Python\Python38\Lib\site-packages\pyqt5_tools\Qt\bin 就可以使用图形界面添加。

4.将设计好的窗口,保存成*.ui文件,Qt Designer设计出来的文件默认为.ui文件,里面包含的类css布局设计语言,如果想用python运行,我们还需要将它转换成.py文件。

输入转换命令:pyuic5 -o main.py main.ui qt工具会自动将其装换为对应的py文件,这样就不需要手动写代码构建了。

5.打开生成的.py文件,Ui_MainWindow这个类已经把布局都写好了。我只要修改调用一下就可以运行。 在代码后面添以下代码:

if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow() ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())

直接点击运行即可看到生成的界面啦,但是运行后,后面会有cmd窗口,不美观,你可以将文件改为 main.pyw 然后运行,就没有后面的CMD窗口了。

import sys
from PyQt5.QtWidgets import QWidget,QApplication class Demo(QWidget):
def __init__(self):
super().__init__()
self.intui() def intui(self):
self.resize(350,250)
self.move(300,500)
self.setWindowTitle("hello world")
self.show() if __name__ == '__main__':
app=QApplication(sys.argv)
obj=Demo()
sys.exit(app.exec_())

添加按钮,点击后退出。

import sys
from PyQt5.QtWidgets import QWidget,QApplication,QPushButton,QToolTip
from PyQt5.QtGui import QFont
from PyQt5.QtCore import QCoreApplication
class Demo(QWidget):
def __init__(self):
super().__init__()
self.intui() def intui(self):
btn=QPushButton("提交",self)
btn.clicked.connect(QCoreApplication.instance().quit)
btn.resize(btn.sizeHint())
btn.move(102,102)
self.setGeometry(300,300,300,300)
self.show() if __name__ == '__main__':
app=QApplication(sys.argv)
obj=Demo()
sys.exit(app.exec_())

Python-使用PyQT生成图形界面的更多相关文章

  1. Python编写的桌面图形界面程序实现更新检测和下载安装

    在Python中我们有很多种方案来编写桌面图形用户界面程序,譬如内置的 Tkinter .强大的 PyQt5 和 PySide2 ,还有 wxPython .借助这些或内置或第三方的模块,我们可以轻松 ...

  2. 使用PyQt开发图形界面Python应用专栏目录

    ☞ ░ 前往老猿Python博文目录 ░ 本专栏为收费专栏的文章目录,对应的免费专栏为<PyQt入门知识目录>,两个专栏都为基于PyQt的Python图形界面开发基础教程,只是收费专栏中的 ...

  3. python使用pyqt写带界面工具

    上篇介绍的使用python自带tkinter包,来写带界面的工具. 此篇介绍使用pyqt来开发测试工具. tkinter的好处是python官方自带,上手容易(但手写控件复杂),布局和摆放都不直观和容 ...

  4. python在linux制作图形界面(snack)

    snack是一个用于在linux制作图形界面(GUI)的模块,该模块由c编写,而且redhat的系统都自带这个模块. 1.获取模块 虽然redhat系统会自带这个模块,但是直接去import snac ...

  5. python使用easygui写图形界面程序

    我 们首先下载一个类库easygui,它是一个Python用于简单开发图形化界面的类库,打开easygui的下载网页 http://sourceforge.net/projects/easygui/? ...

  6. 使用PyQT开发图形界面程序

    环境 python:v3.3 PyQT:v4.10.4 注意问题: 在主文件前面加入,否则当前的工程模块无法找到 import sys sys.path.append(".") 入 ...

  7. Python中编写精美图形界面(PyQt5)

    纯代码,布局的讲解 见: https://cloud.tencent.com/developer/article/1345469 Qt designer设计文件 .ui转 .py文件,进阶使用 注:不 ...

  8. PyQt(Python+Qt)学习随笔:print标准输出sys.stdout以及stderr重定向QTextBrowser等图形界面对象

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 <在Python实现print标准输出sys.stdout.st ...

  9. 第15.17节 PyQt(Python+Qt)入门学习:PyQt图形界面应用程序的事件捕获方法大全及对比分析

    老猿Python博文目录 老猿Python博客地址 按照老猿规划的章节安排,信号和槽之后应该介绍事件,但事件在前面的随笔<PyQt(Python+Qt)实现的GUI图形界面应用程序的事件捕获方法 ...

随机推荐

  1. wireshark源码分析 一

    因为手头的项目需要识别应用层协议,于是想到了wireshark,打算在项目中集成wireshark协议分析代码.在官网上下了最新版的wireshark源代码,我的天啊,200多M,这么多代码文件怎么看 ...

  2. Windows-universal-samples学习笔记系列四:Data

    Data Blobs Compression Content indexer Form validation (HTML) IndexedDB Logging Serializing and dese ...

  3. springMVC学习二 原始springMVC环境搭建

    第一步:导入jar包 第二步:配置DispatcherServlet DispatcherServlet本质是一个Servlet,在spring-webmvc包中,在servlet2.5之前  spr ...

  4. 13个开源GIS软件 你了解几个?

    地理信息系统(Geographic Information System,GIS)软件依赖于覆盖整个地球的数据集.为处理大量的 GIS 数据及其格式,编程人员创建了若干开源库和 GIS 套件. GIS ...

  5. hadoop web管理界面不能打开问题

    centos 7 安装好hadoop的,hadoop和yarn都正常启动,但是yarn的web界面(8088),hdfs的web界面(50070)都不能打开,防火墙是处于关闭状态. 修改默认启动级别, ...

  6. 用百度AI的OCR文字识别结合JAVA实现了图片的文字识别功能

    第一步可定要获取百度的三个东西 要到百度AI网站(http://ai.baidu.com/)去注册 然后获得 -const APP_ID = '请填写你的appid'; -const API_KEY ...

  7. Codeforces Round #513 by Barcelona Bootcamp C. Maximum Subrectangle(双指针+思维)

    https://codeforces.com/contest/1060/problem/C 题意 给两个数组,a数组有n个元素,b数组有m个元素,两个数组元素互相相乘形成n*m的矩阵,找一个子矩阵,元 ...

  8. PHP函数gmstrftime()将秒数转换成天时分秒

    http://yangjunwei.com/a/930.html PHP函数gmstrftime()将秒数转换成天时分秒   一个应用场景需要用到倒计时的时分秒,比如新浪微博授权有效期剩余: 7天16 ...

  9. 第03章:MongoDB启动参数说明

    ①基本配置 --quiet # 安静输出 --port arg # 指定服务端口号,默认端口27017 --bind_ip arg # 绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定默 ...

  10. java中的标识符、关键字、保留字

    Java中关键字(keyword)和保留字(reservedword) Keyword :Java的关键字对java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等. Reserv ...