Python GUI开发- PyQt5 开发小工具环境入门

前言

常见的python开发gui的库有 Tkinter, PyQt5, wxPython等。本教程是选择PyQt5 开发桌面小工具。

环境准备

只需pip安装即可快速准备好开发环境

pip install pyqt5

快速开始

创建一个空的window窗口
Qapplication():每个GUI都必须包含一个Qapplication,argv表示获取命令行参数,如果不用获取,则可以使用[]代替。
QWidget 是所有用户界面对象的基类,在 PyQt5 中,它是一个非常基本和强大的类,用于创建窗口、对话框、按钮、列表等所有用户界面元素。
show():用来显示窗口
exit(app.exec_()):设置窗口一直运行, 点右上角关闭按钮进行关闭

from PyQt5.Qt import QApplication, QWidget
import sysapp = QApplication(sys.argv)# 创建 window 窗口
window = QWidget()
window.setWindowTitle('工具')
window.resize(600, 300)# 显示窗口
window.show()
sys.exit(app.exec_())

运行后桌面上就会显示一个窗口了

添加文本内容

1.只显示基本文本

# QLabel最基本的功能是显示文本。
label = QLabel(window)
label.setText("Hello World")

2.设置字体大小和颜色

# 设置字体和颜色
label.setStyleSheet('color: blue; font-size: 26px; font-family: Arial;')

3.设置文本对齐
水平方向:AlignLeft、AlignRight、AlignHCenter
垂直方向:AlignTop、AlignBottom、AlignVCenter
居中:AlignCenter

label = QLabel(window)
label.setAlignment(Qt.AlignCenter)
label.setText("Hello World")
label.resize(600, 30)
# 设置字体和颜色
label.setStyleSheet('color: blue; font-size: 26px; font-family: Arial;')

使用示例

from PyQt5.Qt import QApplication, QWidget, QPushButton, QLabel
import sys
from PyQt5.QtCore import Qtapp = QApplication(sys.argv)# 创建 window 窗口
window = QWidget()
window.setWindowTitle('工具')
window.resize(600, 300)# 文本
label = QLabel(window)
label.setAlignment(Qt.AlignCenter)
label.setText("Hello World")
label.resize(600, 30)
# 设置字体和颜色
label.setStyleSheet('color: blue; font-size: 26px; font-family: Arial;')# 显示出来
window.show()
sys.exit(app.exec_())

添加一个按钮

给window窗口中添加一个点击按钮

from PyQt5.Qt import QApplication, QWidget, QPushButton
import sysapp = QApplication(sys.argv)# 创建 window 窗口
window = QWidget()
window.setWindowTitle('工具')
window.resize(600, 300)# 添加一个按钮
button = QPushButton(window)
button.setText("运行")
button.resize(100, 30)
button.move(100, 20)
button.setStyleSheet('background-color:red')# 显示出来
window.show()
sys.exit(app.exec_())

显示效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/12551.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】:文本编辑与输出命令 轻松上手nano、echo和cat

🎥 屿小夏 : 个人主页 🔥个人专栏 : Linux深造日志 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言一、nano1.1 打开文件:1.2 常用快捷键:1.3 其他功能&#xff…

读人工智能时代与人类未来笔记03_演变

1. 演变 1.1. 每个社会都找到了属于自己的一套适应世界的方法 1.1.1. 适应的核心,是有关人类心智与现实之间关系的概念 1.1.2. 人类认识周围环境的能力 1.1.2.1. 这种能力通过知识获得,同时也受到知识…

【渲染数学-01】如何模拟静态流(上)

文章目录 一、说明二、摘要三、简介四、稳定的纳维-斯托克斯4.1 基本方程4.2 解决方法 一、说明 关于流体物质的仿真和模拟,需要流体理论方面的一般知识。我们这里从基本流体方程入手,详细解释如何实现流体仿真的每一个具体步骤。 二、摘要 构建类似流体…

详解pytorch中循环神经网络(RNN、LSTM、GRU)的维度

详解pytorch中循环神经网络(RNN、LSTM、GRU)的维度 RNNtorch.nn.rnn详解RNN输入输出维度 LSTMtorch.nn.LSTM详解LSTM输入输出维度 GRUtorch.nn.GRU详解GRU输入输出维度 三种RNN的示例 首先如果你对RNN、LSTM、GRU不太熟悉,可点击查看。 RNN …

python数据可视化:层次聚类热图clustermap()

【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 python数据可视化: 层次聚类热图 clustermap() [太阳]选择题 请问关于以下代码表述错误的选项是? import seaborn as sns import matplotlib.pyplot as plt import n…

代码随想录—— 填充每个节点的下一个右侧节点指针(Leetcode116)

题目链接 层序遍历 /* // Definition for a Node. class Node {public int val;public Node left;public Node right;public Node next;public Node() {}public Node(int _val) {val _val;}public Node(int _val, Node _left, Node _right, Node _next) {val _val;left _…

开源的全自动生成视频文案、视频素材、视频字幕、视频背景音乐的AI项目

网址 https://github.com/harry0703/MoneyPrinterTurbo 只需提供一个视频 主题 或 关键词 ,就可以全自动生成视频文案、视频素材、视频字幕、视频背景音乐,然后合成一个高清的短视频。 如果用来做视频,可以先收藏一下,值得本地…

51 单片机[2-1]:点亮一个LED

一、在 Keil5 中新建项目 打开 Keil5 ,点击 Project —— new μVision Project 新建文件夹 KeilProject ,以后的项目都在这个文件夹下,再建一个文件夹 2-1 点亮一个LED。在该文件夹下创建名为 Project 的文件,并保存。推荐起这…

Spring Boot:异常处理

Spring Boot 前言使用自定义错误页面处理异常使用 ExceptionHandler 注解处理异常使用 ControllerAdvice 注解处理异常使用配置类处理异常使用自定义类处理异常 前言 在 Spring Boot 中,异常处理是一个重要的部分,可以允许开发者优雅地处理应用程序中可…

复利效应(应用于成长)

应用 每个人在智力、知识、经验上,复利效应都一样,只要能积累的东西,基本上最终都会产生复利效应。 再来看一下复利公式:FP*(1i)^n P本金;i利率;n持有期限。在使用时,一定要注意4个限定条件&a…

AI图书推荐:ChatGPT等生成式AI在高等教育中的应用

自2022年11月以来,ChatGPT及其在高等教育各个层面的影响已成为所有教育对话的核心内容。Chan和Colloton所著的书籍是首批全面探讨ChatGPT与生成式人工智能(GenAI)在高等教育中应用及影响的作品之一。 该书深入研究了针对专业环境定制的AI素养…

基础学习-Git(分布式版本控制系统)

学习视频推荐 http://【黑马程序员Git全套教程,完整的git项目管理工具教程,一套精通git】 https://www.bilibili.com/video/BV1MU4y1Y7h5/?p5&share_sourcecopy_web&vd_source2b85bd9be9213709642d908906c3d863 1、Git环境配置 安装Git Git下…

wireshark_概念

ARP (Address Resolution Protocol)协议,即地址解析协议。该协议的功能就是将IP地址解析成MAC地址。 混杂模式 抓取经过网卡的所有数据包,包括发往本网卡和非发往本网卡的。 非混杂模式 只抓取目标地址是本网卡的数据包,对于发往…

《控制系统实验与综合设计》综合四至六(含程序和题目)

1.电机模型辨识实验 1.1 实验目的 (1)掌握一阶系统阶跃响应的特点,通过实验加深对直流电解模型的理解; (2)掌握系统建模过程中参数的整定,体会参数变化对系统的影响; &#xff0…

单片机开发板上外设资源讲解

单片机开发电路板上简单外设 开发板上各基础外设LED灯按键:数码管介绍液晶屏矩阵键盘扫描的概念LED点阵屏实时时钟蜂鸣器存储器 温度传感器&单总线 开发板上各基础外设 LED灯 中文名:发光二极管 外文名:Light Emitting Diode 简称&…

杨校老师项目之基于单片机STC89C52的智能环境监测系统【嵌入式】

获取全套资料: 有偿获取:mryang511688 技术:C语言、单片机等 摘要: 此设计可分为三个主要部分。此中的温度和湿度的检测功能,通过操纵单总线型温湿度传感器DHT11以数字形式显示,实现了切确测得温湿度的功能…

如何管理多个版本的Node.js

我们如何在本地管理多个版本的Node.js,有没有那种不需要重新安装软件再修改配置文件和环境变量的方法?经过我的查找,还真有这种方式,那就是nvm(Node Version Manager)。 下面我就给大家介绍下NVM的使用 1…

vs2019 c++中模板 enable_if_t 的使用

&#xff08;1&#xff09; 该模板的定义如下&#xff1a; template <bool _Test, class _Ty void> struct enable_if {}; // no member "type" when !_Testtemplate <class _Ty> struct enable_if<true, _Ty> { // type is _Ty for _Testusing …

Golang | Leetcode Golang题解之第89题格雷编码

题目&#xff1a; 题解&#xff1a; func grayCode(n int) []int {ans : make([]int, 1<<n)for i : range ans {ans[i] i>>1 ^ i}return ans }

MSR810-LM快速配置通过LTE模块上网

正文共&#xff1a;1111 字 13 图&#xff0c;预估阅读时间&#xff1a;1 分钟 之前买了一个无线版本的MSR810-W&#xff08;淘了一台二手的H3C企业路由器&#xff0c;就用它来打开网络世界的大门&#xff09;&#xff0c;并整理了一份快速配置&#xff08;脚本案例来了&#x…