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. python中的open( )函数

    函数原型 open(file, mode=‘r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True) buff ...

  2. 【算法】DP解决旅行路径问题

    问题描述 : After coding so many days,Mr Acmer wants to have a good rest.So travelling is the best choice ...

  3. JWT设计实现

    一.JWT基于token的认证流程: 二.JWT SDK的选取: https://jwt.io/ 三.编写JWT Helper: 1.获取token 设置密钥,规定算法,设置过期时间,设置发行方,生命 ...

  4. spring学习七 spring和dynamic project进行整合

    spring和web项目进行整合,其实就是在项目启动时,就创建spring容器,然后在servlet中使用spring容器进行开. 注意:为了页面可以访问到servlet,因此servlet必须放进t ...

  5. 金币(NOIP2015)

    先给题目:金币 又是很水的题,很简单,直接上代码: #include<bits/stdc++.h> using namespace std; int main(){ int n; scan ...

  6. eclipse安装提要

    svn 插件安装http://subclipse.tigris.org/update_1.12.x教程地址http://jingyan.baidu.com/article/f71d60376b4c57 ...

  7. MyBatis 实现新增

    MyBatis实现新增 1.概念学习:(角度不同) 1.1 功能:从应用程序角度出发,软件具有哪些功能 1.2 业务:完成功能时的逻辑,对应Service中一个方法 1.3 事务:从数据库角度出发,完 ...

  8. 解决maltab的中文和英文字体问题,中文乱码

    用比较好看的编程字体,偏偏不显示中文,用支持中文的字体,英文不是等宽的,非常难看. 最近在网上找这方面的解决方法,发现解决问题的方法还是有的. 其实这个问题的原因就是系统自带的等宽字体,不支持中文,解 ...

  9. 解决设置select默认选中不生效的方法

    $scope.storageTypeList = ['Glusterfs','NFS','Ceph']; 不生效的方法: <select class="form-control&quo ...

  10. s5-13 RIP 为什么会 衰败

    DV路由可能遇到的问题 路由环路( routing loop) 计数到无穷问题( Count to infinite) 收敛慢的问题( slow Convergence ) 相信错误的路由信息导致 好 ...