PySide6 GUI 学习笔记——常用类及控件使用方法(常用类颜色常量QColorConstants)

文章目录

    • 一、概述
    • 二、颜色常量表
      • 标准 Qt 颜色
      • SVG 颜色(部分)
    • 三、Python 代码示例
    • 四、代码说明
    • 五、版本兼容性
    • 六、延伸阅读

一、概述

QColorConstants 是 Qt for Python 提供的一个预定义颜色常量集合,包含标准Qt颜色和SVG规范颜色。这些常量可直接替代 QColor 对象,无需解析字符串,性能更优且保证有效性。

该类的详细描述见官方文档:QColorConstants

优势

• 高性能:直接使用内存常量,避免字符串解析开销

• 类型安全:始终返回有效 QColor 对象

• 代码简洁:语义化常量名提高可读性


二、颜色常量表

标准 Qt 颜色

常量名十六进制值颜色预览
Black#000000
White#ffffff
Red#ff0000
DarkGreen#006400
Blue#0000ff
Transparent透明

SVG 颜色(部分)

常量名十六进制值颜色预览
Svg.lightblue#add8e6
Svg.coral#ff7f50
Svg.royalblue#4169e1
Svg.gold#ffd700
Svg.limegreen#32cd32

(完整列表包含140+颜色,可通过文档查询)


三、Python 代码示例

from PySide6.QtGui import QColorConstants, QPainter
from PySide6.QtWidgets import QApplication, QWidgetclass ExampleWidget(QWidget):def paintEvent(self, event):painter = QPainter(self)# 使用标准Qt颜色painter.setBrush(QColorConstants.Red)painter.drawRect(10, 10, 80, 80)# 使用SVG颜色painter.setBrush(QColorConstants.Svg.lightblue)painter.drawEllipse(100, 10, 80, 80)# 透明效果painter.setBrush(QColorConstants.Transparent)painter.drawRect(190, 10, 80, 80)if __name__ == "__main__":app = QApplication()window = ExampleWidget()window.show()app.exec()

代码运行效果

四、代码说明

  1. 导入模块:从 QtGui 导入颜色常量,从 QtWidgets 导入GUI组件
  2. 创建画刷:直接使用 QColorConstants.ConstName 格式访问颜色
  3. SVG颜色:通过 Svg 子命名空间访问SVG规范颜色
  4. 透明处理:使用特殊常量 Transparent 实现透明效果

五、版本兼容性

Qt 版本PySide6 版本支持状态
Qt 6.0+PySide6 6.0+✔️ 完全支持
Qt 5.xPySide2✖️ 不支持

六、延伸阅读

• 颜色混合:使用 QColor().lighter()/.darker() 方法生成渐变色

• 动态颜色:QPalette 类管理系统主题颜色

• CSS支持:qss 样式表可直接使用颜色名称(如 background: lightblue;

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

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

相关文章

MATLAB 自然语言处理入门教程

文章目录 前言环境配置一、MATLAB NLP 工具箱概述二、核心功能与 API1. 文本数据准备2. 特征提取3. 文本分类(传统机器学习)4. 深度学习文本分类(LSTM) 三、实战案例:情感分析四、高级应用1. 命名实体识别(…

C++ deque双端队列、deque对象创建、deque赋值操作

在deque中,front()是头部元素,back()指的是尾部元素。begin()是指向头部的迭代器,end()是指向尾部的下一个元素的迭代器。 push_front 头部进行插入 pop_front 尾部进行删除 push_back 尾部进行插入 pop_back 尾部进行删除 deque如果同时…

java每日精进 5.15【分页实现】

1. 什么是对象转换和数据翻译? 对象转换 对象转换是指将一种类型的对象(如数据库实体 UserDO)转换为另一种类型的对象(如前端响应对象 UserVO 或服务层 DTO)。例如,一个 UserDO 包含用户 ID、姓名和部门 …

什么是API接口?API接口的核心价值

随着互联网技术的蓬勃发展,API 接口作为不同应用程序之间的关键纽带,其重要性愈发凸显。本文将从专业视角,深入剖析 API 接口的分类、原理、请求方式以及安全机制等核心要素,助力读者全面理解这一数字化基础设施。 一、API 接口及…

Linux_ELF文件

目录 前言: 一、ELF文件的类型 二、ELF文件的组成格式 1. ELF头部(ELF Header) 2. 节头表(Section Header Table) 3. 程序头表(Program Header Table) 4. 节(Sections)与段(Segments) 三、ELF文件从形成到加载轮廓 1、ELF可执行文件形成过程 2、 可执行文…

Go语言语法---输入控制

文章目录 1. fmt包读取输入1.1. 读取单个值1.2. 读取多个值 2. 格式化输入控制 在Go语言中,控制输入主要涉及从标准输入(键盘)或文件等来源读取数据。以下是几种常见的输入控制方法: 1. fmt包读取输入 fmt包中的Scan和Scanln函数都可以读取输入&#xf…

【PostgreSQL数据分析实战:从数据清洗到可视化全流程】附录-C. 常用SQL脚本模板

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 附录C. 常用SQL脚本模板速查表一、数据清洗与预处理模板二、数据聚合与分析模板三、窗口函数应用模板四、性能优化与监控模板五、数据备份与恢复模板六、权限管理与安全模板七、事务与错误处理模板八、时…

51单片机课设基于GM65模块的二维码加条形码识别

系统组成 主控单元:51单片机(如STC89C52)作为核心控制器,协调各模块工作。 扫描模块:GM65条码扫描头,支持二维码/条形码识别,通过串口(UART)与单片机通信。 显示模块&a…

【OpenGL学习】(二)OpenGL渲染简单图形

文章目录 【OpenGL学习】(二)OpenGL渲染简单图形OpenGL渲染图形流程顶点,图元和片元VAO,VBO ,EBO着色器示例:使用OpenGL渲染三角形 【OpenGL学习】(二)OpenGL渲染简单图形 OpenGL渲…

基于STM32的INA226电压电流检测仪

系统总体框图 功率检测装置原理图功能及模块连接说明 一、系统功能概述 该装置以STM32F103C8T6微控制器为核心,集成功率检测、数据交互、状态显示和用户提示功能,通过模块化设计实现稳定运行。 二、各模块功能及连接方式 按键模块 功能&#xff1a…

YOLOv2目标检测算法:速度与精度的平衡之道

一、YOLOv2的核心改进:从V1到V2的蜕变 YOLOv2作为YOLO系列的第二代算法,在继承V1端到端、单阶段检测的基础上,针对V1存在的小目标检测弱、定位精度低等问题进行了全方位升级,成为目标检测领域的重要里程碑。 (一&am…

将嵌入映射到 Elasticsearch 字段类型:semantic_text、dense_vector、sparse_vector

作者: Andre Luiz 讨论如何以及何时使用 semantic_text、dense_vector 或 sparse_vector,以及它们与嵌入生成的关系。 通过这个自定进度的 Search AI 实践学习亲自体验向量搜索。你可以开始免费云试用,或者在本地机器上尝试 Elastic。 多年来…

uniapp取消浏览自动填充

为了防止浏览器自动将记住的密码回填进type"password"输入框&#xff0c;所以在type"password"输入框上面加了两行代码&#xff0c;使浏览器将密码填充到新加的输入框里&#xff0c;并将这两个input隐藏掉 <input type"password" autocomple…

从数据包到可靠性:UDP/TCP协议的工作原理分析

之前我们已经使用udp/tcp的相关接口写了一些简单的客户端与服务端代码。也了解了协议是什么&#xff0c;包括自定义协议和知名协议比如http/https和ssh等。现在我们再回到传输层&#xff0c;对udp和tcp这两传输层巨头协议做更深一步的分析。 一.UDP UDP相关内容很简单&#xf…

显卡、Cuda和pytorch兼容问题

这里写目录标题 驱动与CUDA版本兼容性问题1. **驱动与CUDA版本兼容性问题**2. **任务特性与硬件适配差异**3. **优化策略与框架配置差异**4. **散热与功耗限制**5. **数据传输与CPU瓶颈**排查建议总结 查询PyTorch中实际使用的CUDA版本**1. 查询PyTorch中实际使用的CUDA版本***…

DeepSeek 大模型部署全指南:常见问题、优化策略与实战解决方案

DeepSeek 作为当前最热门的开源大模型之一&#xff0c;其强大的语义理解和生成能力吸引了大量开发者和企业关注。然而在实际部署过程中&#xff0c;无论是本地运行还是云端服务&#xff0c;用户往往会遇到各种技术挑战。本文将全面剖析 DeepSeek 部署中的常见问题&#xff0c;提…

Hadoop的目录结构和组成

Hadoop 目录结构 bin 目录&#xff1a;包含了 Hadoop 的各种命令行工具&#xff0c;如hadoop、hdfs等&#xff0c;用于启动和管理 Hadoop 集群&#xff0c;以及执行各种数据处理任务。etc 目录&#xff1a;存放 Hadoop 的配置文件&#xff0c;包括core-site.xml、hdfs-site.xm…

Python Matplotlib 库【绘图基础库】全面解析

让AI成为我们的得力助手&#xff1a;《用Cursor玩转AI辅助编程——不写代码也能做软件开发》 一、发展历程 Matplotlib 由 John D. Hunter 于 2003 年创建&#xff0c;灵感来源于 MATLAB 的绘图系统。作为 Python 生态中最早的可视化工具之一&#xff0c;它逐渐成为科学计算领…

车载以太网驱动智能化:域控架构设计与开发实践

title: 车载以太网驱动专用车智能化&#xff1a;域控架构设计与开发实践 date: 2023-12-01 categories: 新能源汽车 tags: [车载以太网, 电子电气架构, 域控架构, 专用车智能化, SOME/IP, AUTOSAR] 引言&#xff1a;专用车智能化转型的挑战与机遇 专用车作为城市建设与工业运输…

图论模板(部分)

图论模板&#xff08;部分&#xff09; maincpp #include <iostream> #include <climits> #include <limits>typedef unsigned long long ull; typedef long long ll; typedef long double ld; typedef std::pair<int, int> PII;#define rep(i, n) f…