【Python】PySide6使用入门和注意事项

文章目录

    • 前言
    • 关于PySide和PyQt
    • Qt Designer
    • pyside6在vscode中ui文件转换
    • 兼容性问题
    • 主程序结构
    • 蓝牙协议初探(应用层)

前言

  最近在开发一个带界面的软件,需要使用蓝牙,然后找到一个开源仓库使用的是Qt里面的Qbluetooth模块,并且是基于PySide6开发的。之前实际项目中只用过PyQt5,尝试过PySide2,感觉这两者基本一致,代码上可能只需要改一下导入就行。一开始以为PySide6也差不多,实测确实代码上差异很小(除了import外其他的需要略微修改),但在这个项目中还是感觉PySide6开发更方便。遂简单记录一下。

关于PySide和PyQt

  这两者来历相似,但开发维护的公司不同,有兴趣的可以看看以下附的链接。

  • 历史变革
  • pyside2到pyside6的变化和区别

Qt Designer

  PyQt开发的灵魂在于可以用可视化的方式设计界面,然后直接用工具一步生成python代码,非常快捷。一开始还担心PySide6的界面设计不再兼容PyQt5,即不是使用Qt Designer。但好在还是兼容的,二者的界面设计软件就是同一个designer。

pyside6在vscode中ui文件转换

  之前使用PyQt5开发时,常用的插件是那个PYQT Integration,它可以实现右键一步将ui文件和qrc文件转换成python代码,这样可以代码直接调用,非常方便。

在这里插入图片描述

如果使用PySide6开发,需要安装Qt for Python这个插件

在这里插入图片描述

但是使用这个插件必须要安装PySide6的库,否则会出现弹窗报错:

在这里插入图片描述

看内容,是跟qml相关的设置,如果不使用qml,可以忽略。

兼容性问题

Python版本要求

  • PySide6要求Python < 3.11, >=3.6
  • PySide2要求Python>=2.7、!=3.0.、!=3.1.、!=3.2.、!=3.3.、!=3.4.*、< 3.11
  • PySide 要求Python 2.6 或更高版本,不支持Python3

参考链接

Windows版本要求

  实测貌似PySide6对Windows11支持不够好,会出现代码卡死的现象。

主程序结构

  类似于PyQt5,PySide6一般也是先定义一个界面类,要求继承QWidget或者QMainWindow,然后初始化一个application,再运行即可。

from PySide6.QtWidgets import QApplication, QWidget# Only needed for access to command line arguments
import sys# You need one (and only one) QApplication instance per application.
# Pass in sys.argv to allow command line arguments for your app.
# If you know you won't use command line arguments QApplication([]) works too.
app = QApplication(sys.argv)# Create a Qt widget, which will be our window.
window = QWidget()
window.show()  # IMPORTANT!!!!! Windows are hidden by default.# Start the event loop.
app.exec()# Your application won't reach here until you exit and the event
# loop has stopped.

Reference

蓝牙协议初探(应用层)

  因为这个项目需要使用到蓝牙,所以花了点时间学习蓝牙的上层应用协议,即了解蓝牙协议大概有哪些部分及各个部分之间的关系。
  首先PySide6自带了蓝牙的库:

from PySide6.QtBluetooth import (QBluetoothDeviceDiscoveryAgent,QLowEnergyController,QLowEnergyService,QLowEnergyCharacteristic,QBluetoothUuid,QBluetoothDeviceInfo,QLowEnergyDescriptor,
)

各个模块的具体使用方式建议查找文档或者找个开源的仓库学习一下代码。

  蓝牙协议方面,最重要的就是各种uuid,首先设备有uuid,类似于计算机网卡的IP,通过scan找到想连接的设备(一般是通过名称来连接),连接之后,需要查找设备中的服务(Service),所谓服务,可以理解为设备中的一些线程,比如有传输电池数据的线程,传输同步时间的线程,传输音乐数据或其他特定数据的线程。之所以叫做服务,是因为这些线程有些不是默认运行的,需要先去“访问”。然后每个服务的下面有属性(Characteristic),就是这个服务的一些设置或者说状态指示。比如说属性中会说明这个服务是只读,还是可读可写,是否可订阅等信息。每个服务和属性都是具有各自的uuid的,这些也是在编程中使用较多的常数。

  基本使用步骤建议参考这篇文章

附:蓝牙协议详解

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

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

相关文章

List实现类——ArrayList、LinkedList及迭代器(并发修改异常错误)源码分析

1、ArrayList本质及源码分析 两种情况&#xff1a;加一个和很多个 底层原理&#xff1a;elementData是底层数组的名字 再次满了的话&#xff0c;在扩容1.5倍 如果利用addAll一次添加多个元素&#xff0c;按实际元素数进行扩容 源码分析&#xff1a; 1、空参构造&#xff0c;…

STORM论文阅读笔记

这是篇NIPS2023的 world model 论文文章提出&#xff0c;WM的误差会在训练过程中积累从而影响policy的训练&#xff0c;向WM中加噪声可以改善这一点。其他的流程和IRIS差不多&#xff0c;差别在以下几点&#xff1a; image encoder&#xff0c;IRIS用的VQVAE, 本文用的是VAE&am…

看穿人性!现货白银交易的一些博弈心得

很多投资者认为现货白银交易最应该讲求的是交易技巧&#xff0c;但交易的技巧和套路是“死”的&#xff0c;行情走势却是“活”的&#xff0c;投资者需要在实践中不断地累积经验和总结心得&#xff0c;才能更加灵活地面对行情走势的变化&#xff0c;逐步达至盈利的理想彼岸。 无…

本地安装nightingale监控分析服务并发布公网详细流程

文章目录 前言1. Linux 部署Nightingale2. 本地访问测试3. Linux 安装cpolar4. 配置Nightingale公网访问地址5. 公网远程访问Nightingale管理界面6. 固定Nightingale公网地址 前言 本文主要介绍如何在本地Linux系统部署 Nightingale 夜莺监控并结合cpolar内网穿透工具实现远程…

Go基础编程 - 09 - 通道(channel)

通道&#xff08;channel&#xff09; 1. 声明2. channel的操作3. 无缓冲通道4. 有缓冲通道5. 如何优雅的从通道循环取值6. 单向通道7. 异常总结 上一篇&#xff1a;结构体 Go语言的并发模式&#xff1a;不要通过共享内存来通信&#xff0c;而应该通过通信来共享内存。 Go语言…

oracle安装,导出、导入domp文件、解开oracle行级锁

下载地址&#xff1a; https://www.oracle.com/database/technologies/oracle19c-windows-downloads.html 然后解压&#xff0c;请记住你的解压地址&#xff0c;也就是软件安装地址&#xff0c; 后面还会有一个数据库存储位置&#xff0c;导出的domp文件就是在这里。 然后按照…

PyQt5和Eric7的安装使用 —— Python篇

需要安装Python的朋友请看另一篇文章&#xff1a; windows系统安装Python -----并安装使用Pycharm编辑器 一、安装PyQt5&#xff1a; 1、方法一&#xff1a;使用pip命令在线安装。 输入以下命令可以直接安装&#xff1a; pip install PyQt5 由于安装默认使用国外的镜像&a…

豆浆机水位传感器工作原理

豆浆机水位传感器的工作原理基于光电效应&#xff0c;利用近红外发光二极管和光敏接收器的组合实现液位的精确检测与控制。在豆浆机内部&#xff0c;传感器安装在水箱底部或需要检测液位的位置&#xff0c;起到监测和控制豆浆机水位的重要作用。 传感器包括一个近红外发光二极…

李良济联合盒马杭州店,带你沉浸式体验中医药文化,玩转夏季养生~

6月15-16日&#xff0c;李良济携手盒马联合打造的老字号养生路演活动&#xff0c;在新开业的杭州城西银泰城盒马店强势开启&#xff01; 现场&#xff0c;既有李良济特色清凉养生茶饮&#xff0c;还有中医药文化体验活动&#xff0c;惊喜不断&#xff0c;养生不停~这个夏天在盒…

编写乘法器求解算法表达式

描述 编写一个4bit乘法器模块&#xff0c;并例化该乘法器求解c12*a5*b&#xff0c;其中输入信号a,b为4bit无符号数&#xff0c;c为输出。注意请不要直接使用*符号实现乘法功能。 模块的信号接口图如下&#xff1a; 要求使用Verilog HDL语言实现以上功能&#xff0c;并编写tes…

修改以太网卡mac地址

原生以太网卡与PCIe以太网卡 以Intel 原生以太网卡与PCIe以太网卡为例&#xff1a; Intel原生以太网卡和PCIe以太网卡在系统中实现网络连接时&#xff0c;涉及到与系统总线&#xff08;如PCIe总线&#xff09;的连接方式和性能差异。 Intel 原生以太网卡 定义&#xff1a;所…

cloud_enum:一款针对不同平台云环境安全的OSINT工具

关于cloud_enum cloud_enum是一款功能强大的云环境安全OSINT工具&#xff0c;该工具支持AWS、Azure和Google Cloud三种不同的云环境&#xff0c;旨在帮助广大研究人员枚举目标云环境中的公共资源&#xff0c;并尝试寻找其中潜在的安全威胁。 功能介绍 当前版本的cloud_enum支…

第04章:IDEA的安装与使用

第04章&#xff1a;随堂复习与企业真题&#xff08;IDEA安装与使用&#xff09; 一、随堂复习 1. IDEA的认识 IDEA(集成功能强大、符合人体工程学&#xff08;设置人性化&#xff09;)Eclipse 2. IDEA的下载、安装、卸载 卸载&#xff1a;使用控制面板进行卸载&#xff0c;…

列出docker常用的命令

一、基础命令 docker run 创建并启动一个容器 docker ps 列出当前运行的容器 docker ps -a 列出所有容器&#xff0c;包括未运行的 docker stop 停止一个运行中的容器 docker start 启动一个已停止的容器 docker restart 重启容器 docker rm 删除一个或多个容器 docker pull 从…

OpenCV 双目三角法计算点云

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 基于三角法计算点坐标的过程类似于我们人类眼睛观察事物的过程: 如上图所示,通过两个相机观察到同一位置,我们可以通过两个相机得到这一位置的投影坐标 ( u r , v r ) , ( u l , v l )

golang函数

【1】函数&#xff1a; 对特定的功能进行提取&#xff0c;形成一个代码片段&#xff0c;这个代码片段就是我们所说的函数 【2】函数的作用&#xff1a;提高代码的复用性 【3】函数和函数是并列的关系&#xff0c;所以我们定义的函数不能写到main函数中 【4】基本语法 func 函…

HTML基础结构入门

HTML&#xff08;超文本标记语言&#xff09;是构建网页的基础语言。它用于描述网页的结构和内容。让我们从最基本的HTML文档开始。 HTML基础结构 一个基本的HTML文档结构如下&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta …

产品应用 | 小盒子跑大模型!英码科技基于算能BM1684X平台实现大模型私有化部署

当前&#xff0c;在人工智能领域&#xff0c;大模型在丰富人工智能应用场景中扮演着重要的角色&#xff0c;经过不断的探索&#xff0c;大模型进入到落地的阶段。而大模型在落地过程中面临两大关键难题&#xff1a;对庞大计算资源的需求和对数据隐私与安全的考量。为应对这些挑…

保护模式下的内存访问(笔记)

;代码清单12-1;文件名&#xff1a;c12_mbr.asm;文件说明&#xff1a;硬盘主引导扇区代码;创建日期&#xff1a;2011-5-16 19:54&#xff1b;修改于2022-02-16 11:15;设置堆栈段和栈指针mov ax, csmov ss, axmov sp, 0x7c00;计算GDT所在的逻辑段地址mov ax, [cs: gdt_base 0x7c…

Chatgpt、Chatglm、Gemini、通义千问、文心一言、Kimi、字节豆包 AI 写高考作文,附各大模型体验案例~

六月&#xff0c;高考季&#xff0c;AI 来帮 阅读材料 要求&#xff1a;选准角度&#xff0c;确定立意&#xff0c;明确文体&#xff0c;自拟标题&#xff1b;不要套作&#xff0c;不得抄袭&#xff1b;不得泄露个人信息&#xff1b;不少于800字。 Ai 来写作 【构建提示…