QT:颜色选择器

普通

Qt提供了一个现成的QColorDialog类。

用法:

cpp 复制代码
#include <QColorDialog>

QColor color = QColorDialog::getColor(Qt::white, this);
if(!color.isValid()){
     //点击 关闭 或 cancel 颜色无效
}else {
     ui->text->setText(color.name());//类似##ffff
     QRgb rgb = color.rgb();
     qDebug() << "rgb== " <<  qRed(rgb) << qGreen(rgb) << qBlue(rgb);
}

**缺点:**不能直接显示颜色

进阶

用toolbutton来显示被选择的颜色

实现方法:

其实就是点击上面的button后,新建一个布局,往里遍历生成6*8个QToolButton,每个赋值一个颜色。点击后跟换上面的button的Icon(用Qpainter在QPixmap里画矩形,QRect这是绘制矩形框,根据需求设置不同的绘制方式,最后用 painter.drawPixmap往QRect里填)。

相关推荐
海绵宝宝转agent1 分钟前
LeetCode100 LRU缓存思路讲解
java·开发语言·缓存
AC赳赳老秦24 分钟前
OpenClaw 与 FineBI 联动方案:公开数据自动采集与实时业务分析看板实践
大数据·开发语言·python·php·finebi·deepseek·openclaw
通信瓦工29 分钟前
OCP 冷却环境与冷却剂分配单元(CDU)子项目
java·开发语言
坤坤子吖1 小时前
Python基础语法学习:函数
开发语言·笔记·python·学习
言乐61 小时前
Python体现逻辑回归和决策树的区别
开发语言·python·算法·决策树·逻辑回归
扶尔魔ocy1 小时前
【qt openGL入门笔记】坐标系统和摄像机
qt·opengl
LOVE️YOU1 小时前
Python 类与对象的核心逻辑:从 self、cls 到点号、括号与链式调用
开发语言·python
顶点多余1 小时前
C/C++常见面试题
开发语言·c++
(Charon)1 小时前
【C++面试】右值引用与移动语义:std::move到底做了什么
开发语言·c++
TheITSea1 小时前
JavaScript Web APIs
开发语言·前端·javascript