04_HUD_Qt_for_Python开发之路2

简介: 04_HUD_Qt_for_Python开发之路2

image.png

欢迎来到我的博客,希望这篇文章对你有所帮助,如果觉得不错,请点赞搜藏哈。


文章目录


HUD_Qt_for_Python开发之路2

1 设置程序名称

2 隐藏窗口标题栏

3 设置窗口透明裁剪

4 修改下窗口大小,重新加载

5 搞定网络模块

5.1 包含网络模块

5.2 初始化UDP Socket

HUD_Qt_for_Python开发之路2

1 设置程序名称

本片我们将正式开始我们HUD仪表的开发工作。这一篇首先要给我们的窗口重新命名为HUD使用代码如下:


widget.setWindowTitle("HUD"),代码位置如下图所示。

image.png

2 隐藏窗口标题栏


Python在Qt的中API基本还是保持了Qt原有的样子,好多东西还是可以参照的,就比如这个已隐藏窗口的标题栏,在传统C++中,我们使用setWindowFlag(Qt::FramelessWindowHint);在Python中使用setWindowFlag(QtCore.Qt.FramelessWindowHint,True),是不是很相似,现在看下我们整个main.py程序的全貌。

————————————————

版权声明:本文为CSDN博主「DreamLife.」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/z609932088/article/details/119914698

# This Python file uses the following encoding: utf-8
import sys
import os
from PySide6 import QtCore
from PySide6.QtWidgets import QApplication, QWidget
from PySide6.QtCore import QFile
from PySide6.QtUiTools import QUiLoader
class HUD(QWidget):
    def __init__(self):
        super(HUD, self).__init__()
        self.load_ui()
    def load_ui(self):
        loader = QUiLoader()
        path = os.path.join(os.path.dirname(__file__), "hud.ui")
        ui_file = QFile(path)
        ui_file.open(QFile.ReadOnly)
        loader.load(ui_file, self)
        ui_file.close()
if __name__ == "__main__":
    app = QApplication([])
    widget = HUD()
    widget.setWindowTitle("HUD")            #设置标题名称
    widget.setWindowFlag(QtCore.Qt.FramelessWindowHint,True)                #设置程序隐藏标题栏
    widget.show()
    with open("images.qss","r") as f:
        _style = f.read()
        app.setStyleSheet(_style)
    sys.exit(app.exec_())

image.pngimage.pngimage.pngimage.pngimage.pngimage.png

# This Python file uses the following encoding: utf-8
import sys
import os
from PySide6 import QtCore
from PySide6 import QtNetwork
from PySide6.QtNetwork import QUdpSocket
from PySide6.QtWidgets import QApplication, QWidget
from PySide6.QtCore import QFile,QObject
from PySide6.QtUiTools import QUiLoader
class HUD(QWidget):
    def __init__(self):
        super(HUD, self).__init__()
        self.load_ui()
        self.initSocket()
    def load_ui(self):
        loader = QUiLoader()
        path = os.path.join(os.path.dirname(__file__), "hud.ui")
        ui_file = QFile(path)
        ui_file.open(QFile.ReadOnly)
        loader.load(ui_file, self)
        ui_file.close()
    def initSocket(self):
        udpSocket = QUdpSocket(self)            #初始化
        udpSocket.bind(6876) #绑定端口
#        self.connect(udpSocket,SIGNAL('readyRead()'),self,SLOT('readPendingDatagrams'))
        udpSocket.readyRead.connect(self.readPendingDatagrams)             #新的信号槽编写方式
    def readPendingDatagrams(self):
        while udpSocket.hasPendingDatagrams:
            datagram = QByteArray()
            datagram.resize(udpSocket.pendingDatagramSize())
            (sender,senderPort) = udpSocket.readDatagram(datagram.data(), datagram.size())
            processTheDatagram(datagram)
            print(datagram)
if __name__ == "__main__":
    app = QApplication([])
    widget = HUD()
    widget.setWindowTitle("HUD")            #设置标题名称
    widget.setWindowFlag(QtCore.Qt.FramelessWindowHint,True)                #设置程序隐藏标题栏
    widget.setAttribute(QtCore.Qt.WA_TranslucentBackground,True)            #设置窗口透明
    widget.show()
    with open("images.qss","r") as f:
        _style = f.read()
        app.setStyleSheet(_style)
    sys.exit(app.exec_())
目录
相关文章
|
7天前
|
存储 数据库连接 API
Python环境变量在开发和运行Python应用程序时起着重要的作用
Python环境变量在开发和运行Python应用程序时起着重要的作用
46 15
|
1月前
|
算法 测试技术 开发者
性能优化与代码审查:提升Python开发效率
【10月更文挑战第12天】本文探讨了Python开发中性能优化和代码审查的重要性,介绍了选择合适数据结构、使用生成器、避免全局变量等性能优化技巧,以及遵守编码规范、使用静态代码分析工具、编写单元测试等代码审查方法,旨在帮助开发者提升开发效率和代码质量。
36 5
|
1月前
|
算法 测试技术 开发者
性能优化与代码审查:提升Python开发效率
【10月更文挑战第6天】本文探讨了性能优化和代码审查在Python开发中的重要性,提供了选择合适数据结构、使用生成器、避免全局变量等性能优化技巧,以及遵守编码规范、使用静态代码分析工具、编写单元测试等代码审查方法,旨在帮助开发者提升开发效率和代码质量。
55 5
|
18天前
|
设计模式 前端开发 数据库
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
109 45
|
14天前
|
JSON 安全 API
如何使用Python开发API接口?
在现代软件开发中,API(应用程序编程接口)用于不同软件组件之间的通信和数据交换,实现系统互操作性。Python因其简单易用和强大功能,成为开发API的热门选择。本文详细介绍了Python开发API的基础知识、优势、实现方式(如Flask和Django框架)、实战示例及注意事项,帮助读者掌握高效、安全的API开发技巧。
41 3
如何使用Python开发API接口?
|
6天前
|
JSON API 数据格式
如何使用Python开发1688商品详情API接口?
本文介绍了如何使用Python开发1688商品详情API接口,获取商品的标题、价格、销量和评价等详细信息。主要内容包括注册1688开放平台账号、安装必要Python模块、了解API接口、生成签名、编写Python代码、解析返回数据以及错误处理和日志记录。通过这些步骤,开发者可以轻松地集成1688商品数据到自己的应用中。
22 1
|
12天前
|
数据采集 存储 JSON
Python爬虫开发中的分析与方案制定
Python爬虫开发中的分析与方案制定
|
19天前
|
数据可视化 开发者 Python
Python GUI开发:Tkinter与PyQt的实战应用与对比分析
【10月更文挑战第26天】本文介绍了Python中两种常用的GUI工具包——Tkinter和PyQt。Tkinter内置于Python标准库,适合初学者快速上手,提供基本的GUI组件和方法。PyQt基于Qt库,功能强大且灵活,适用于创建复杂的GUI应用程序。通过实战示例和对比分析,帮助开发者选择合适的工具包以满足项目需求。
64 7
|
22天前
|
算法 测试技术 开发者
性能优化与代码审查:提升Python开发效率
探讨了Python开发中性能优化和代码审查的重要性,介绍了选择合适数据结构、使用生成器、避免全局变量等性能优化技巧,以及遵守编码规范、使用静态代码分析工具、编写单元测试等代码审查方法,旨在帮助开发者提升开发效率和代码质量。
41 8
|
18天前
|
算法 测试技术 开发者
性能优化与代码审查:提升Python开发效率
性能优化与代码审查:提升Python开发效率
28 1