PyQt6 一个简单的例子

PyQt6简单例子

  • 需求
    • 代码目录
    • 代码实现
    • 代码运行效果

需求

1、通过PyQt6实现一个小的应用程序,并设置应用程序的图标,应用程序的标题,然后再提示一个气泡框,不过显示一会就会消失不见。

代码目录

  • 在PyQt文件夹下新建一个包,这里我命名为com.lyx.test,包底下创建一个PyQt6Test.py文件。
  • 接着在PyQt文件夹下,新建一个目录为icon,放入一个ico图标文件。
  • 如下图所示:
    在这里插入图片描述

代码实现

  • 这里直接贴上代码,里面有自己写的注释,了解不是特别深,可能理解有误,敬请见谅。
  • 代码如下:
# 导入sys系统库
import sys
# 导入QtWidgets 桌面应用开发库
from PyQt6 import QtWidgets
# 导入QPoint、QRect库
from PyQt6.QtCore import QPoint, QRect
# 导入QIcon、QFont库
from PyQt6.QtGui import QIcon, QFont
# 导入QToolTip库
from PyQt6.QtWidgets import QToolTip


if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)  # 生成应用程序对象
    win = QtWidgets.QWidget()   # 生成QWidget对象
    win.resize(500, 500)    # 构造一个长宽各500的对话框
    icon = QIcon("../icon/favicon.ico")    # 实例化QIcon对象,指定桌面图标文件
    icon.availableSizes(mode=QIcon.Mode.Active, state=QIcon.State.On)  # 激活QIcon对象,并开启,默认是关闭
    win.setWindowIcon(icon)    # 设置桌面应用图标
    win.setWindowTitle("Hello PyQt6")   # 设置桌面应用程序对话框名称
    font = QFont()  # 构造字体对象
    font.setStyle(QFont.Style.StyleItalic)  # 设置字体为斜字,默认是正常
    font.setWeight(QFont.Weight.Bold)   # 设置字体加粗
    tool_tip = QToolTip  # 生成QToolTip对象,气泡框
    tool_tip.setFont(font)  # 设置气泡框的字体
    # point = QPoint(100, 100)  # 如果由point指定了x,y坐标,就不用QRect构造对象了,
    point = QPoint()    # 构造一个QPoint对象,空的,未指定x,y坐标,由QRect来构造矩阵
    rect = QRect()  # 构造一个QRect对象
    rect.setRect(100, 200, 11, 16)  # 设置x,y坐标,宽高
    tool_tip.showText(point, "Hello PyQt6", rect=rect)  # 气泡框设置文本以及矩阵,传入point对象,rect对象
    tool_tip.isVisible()    # 设置气泡框为可见
    win.show()  # 展示QWidget
    win.setToolTip(tool_tip.text())  # QWidget展示气泡框的文本
    """
    进入程序的主循环直到exit()被调用
    注:不用sys.exit(app.exec_()),只使用app.exec_(),程序一样可以正常运行,但是关闭窗口后进程却不会退出
    """
    sys.exit(app.exec())

代码运行效果

  • 代码运行效果如下,显示了Hello PyQt6的气泡框,慢慢显示出这个气泡框,过不了多久就消失,变得一片空白:

在这里插入图片描述
以上内容仅供学习参考,如有错误,请指出,谢谢!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

五、Shell 注释

一、单行注释 以井号(#)来注释单行,Shell 并不会处理 Shell 脚本中的注释行。然而 Shell 脚本第一行是个例外,# 号后面的感叹号(!)是用来告诉系统用哪个解释器来运行脚本。示例和运行结果如图所示&#xf…

基于Java SSM框架实现在线课程教育资源考试管理系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现在线课程教育资源考试管理系统演示 摘要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线教育资源管理系统,主要的模块包括管理员;个人中心、学生…

GoLang EASY 微服务游戏框架 01

1 Overview EASY 是一个go语言编写的框架,兼容性支持go版本1.19,go mod 方式构建管理。它是一个轻型,灵活,自定义适配强的微服务框架。 它支持多种网络协议TCP,websocket,UDP(待完成&#xf…

java-sec-code的xss

java-sec-code 用于学习java漏洞代码 环境部署 直接在idea中使用git 运行即可 RequestMapping("/reflect") ResponseBody public static String reflect(String xss) {return xss;}当用户访问到/reflect URL地址时,程序会自动调用reflect方法&#xff0c…

机器视觉系统选型-工业相机的焦距

机器视觉项目需要尽快完成,需要有能力,有技术,经过项目的毒打过的老员工才可以扛起“战时状态”大旗,并且充分完成此类机器视觉项目,毫不夸张地说,就是公司机器视觉项目的顶梁柱。老员工就是机器视觉公司的…

【力扣】19. 删除链表的倒数第 N 个结点

19. 删除链表的倒数第 N 个结点 相比于昨天,感觉刷题越来越轻松了~ 我进步了! 以后刷题力度要加快了,因为我报了蓝桥杯!加油~ 法一:计算链表长度 思路: 首先用个函数来计算出该链表的长度,然…

【PWN】学习笔记(三)【返回导向编程】(下)

目录 课程回顾ret2libc![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/ebe1a9a9e54f4319946621dbe89c5774.png)做题 课程 课程链接:https://www.bilibili.com/video/BV1854y1y7Ro/?vd_source7b06bd7a9dd90c45c5c9c44d12e7b4e6 课程附件: h…

Linux:时间显示(函数介绍)

文章目录 1、sleep:延迟函数2、time/localtime3、示例:sleep time localtime4、Linux时间调整 1、sleep:延迟函数 函数原型:unsigned int sleep(unsigned int seconds); 功 能:延时 参 数:seconds:秒&am…

【Python必做100题】之第十八题(找质数因子)

题目:输入一个正整数,输出它的所有质数因子(如180的质数因子为2、2、3、3、5) 代码如下: a int(input("请输入一个自然数:")) y 2 list [ ]while a ! y:if a % y 0:list.append(y)a / yelse…

华为认证 | HCIE-Security V3.0 认证将在12月底发布!

非常荣幸地通知您,华为认证HCIE-Security V3.0(中文版)预计将于2023年12月29日正式对外发布。 为了帮助您做好学习、培训和考试计划,现进行预发布通知,请您关注。 HCIE-Security V3.0考试代码: H12-731&…

力扣131. 分割回文串(java 回溯法)

Problem: 131. 分割回文串 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 题目要求我们给出所有的回文子字符串,而涉及到穷举我们可以利用回溯来解决,另外我们也可以发现问题中涉及到元素存在重复但不可复用的特性,因此我们可以类…

简单描述从输入网址到页面显示的过程

当用户输入网址并按下回车键后,浏览器会进行以下步骤: DNS 解析:浏览器会解析网址中的域名部分,提取出需要访问的目标域名。然后,它会向本地 DNS 服务器发送一个 DNS 查询请求,以获取该域名对应的 IP 地址。…

【计算机组成体系结构】双端口RAM和多体结构主存储器

一、存取周期回顾 DRAM的电容结构决定了DRAM的破坏性读出,因此DRAM需要在存取过程中不断的恢复刷新才能使数据不丢失。 由此引发了两个问题,多核CPU的每个核都要访存怎么办?以及如何解决恢复时间长的问题? 二、双端口RAM 双端口…

linux 网络子系统 摘要

当你输入一个网址并按下回车键的时候,首先,应用层协议对该请求包做了格式定义;紧接着传输层协议加上了双方的端口号,确认了双方通信的应用程序;然后网络协议加上了双方的IP地址,确认了双方的网络位置;最后链路层协议加上了双方的M…

CLE Diffusion:Controllable light enhancement diffusion model

自己训练了个控制亮度变化的扩散模型。 1.Introduction low-light capturing conditions有很多因素,比如sub-optimal ISO setting,纠正degradation是关键。直方图均衡化来调整对比度,旨在扩展低光图像的动态范围。提出了可迭代的Controllabl…

Unity:Camera讲解之ClearFlags

Clear Flags四个选项讲解: 前三个都是常用的,第四个基本不会用。 skybox(天空盒): 主要是一种用于渲染游戏场景中天空的技术。它是一个包含6个纹理图片的立方体贴图,分别代表了从不同角度观察天空时所看到的前、后、上、下、左…

【机器学习】利用线性回归预测披萨价格

目录 前言 一、绘制散点图 二、数据准备 三、一元线性回归模型训练 四、一元线性回归模型评估 总结 🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对你有所帮助。 💡本文由Filotimo__✍️原创,首…

Github 2023-12-15 开源项目日报 Top10

根据Github Trendings的统计,今日(2023-12-15统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量TypeScript项目3非开发语言项目3JavaScript项目1Python项目1Rust项目1PHP项目1 基于项目的学习 创建周期&am…

Python-折线图可视化

折线图可视化 1.JSON数据格式2.pyecharts模块介绍3.pyecharts快速入门4.创建折线图 1.JSON数据格式 1.1什么是JSON JSON是一种轻量级的数据交互格式。可以按照JSON指定的格式去组织和封装数据JSON本质上是一个带有特定格式的字符串 1.2主要功能json就是一种在各个编程语言中流…

Splashtop 与 Swif 携手通过集成的远程桌面访问简化设备管理

2023年12月14日 加利福尼亚州库比蒂诺 安全远程访问解决方案领域的开拓者 Splashtop 今日宣布与 Swif——设备管理和安全领域先驱建立全新集成合作伙伴关系。此次合作推动形成了简单而强大的解决方案,该解决方案可满足中小企业和大型企业不断变化的需求&#xff0c…