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里填)。

相关推荐
ClearViper33 分钟前
Java的多线程笔记
java·开发语言·笔记
敷啊敷衍3 分钟前
深入探索 C++ 中的 string 类:从基础到实践
开发语言·数据结构·c++
学地理的小胖砸13 分钟前
【Python 面向对象】
开发语言·python
钢铁男儿13 分钟前
PyQt 探索QMainWindow:打造专业的PyQt5主窗
python·qt·pyqt
神经毒素43 分钟前
WEB安全--Java安全--LazyMap_CC1利用链
java·开发语言·网络·安全·web安全
酷炫码神1 小时前
C#语法基础
开发语言·c#
ddd...e_bug1 小时前
GMT之Bash语言使用
开发语言·bash
码农秋1 小时前
填坑记: 古董项目Apache POI 依赖异常排除
开发语言·tomcat·jsp·poi·依赖冲突
qq_653644461 小时前
如何查看打开的 git bash 窗口是否是管理员权限打开
开发语言·windows·git·bash
sadoshi1 小时前
phpstudy的Apache添加AddType application/x-httpd-php .php .php5配置无效的处理方式
开发语言·php·apache