Qt标准对话框之QColorDialog

Qt中提供了一些标准的对话框,用于实现一些常用的预定义功能,比如本节中将要介绍的颜色对话框——QColorDialog。

在不同的系统平台下,颜色对话框的显示效果可能会有所不同,主要因系统主题风格而异,但是功能是相同的,显示效果如下:

查看帮助文档的话,我们可以看到这个类提供的方法还是很多的,但是我们一般情况下用到的也就一个静态的成员方法:getColor(),该函数的原型如下:

1 QColor QColorDialog::getColor(const QColor & initial = Qt::white, QWidget * parent = 0, const QString & title = QString(), ColorDialogOptions options = 0) [static]

通过该方法可以返回一个QColor值,但是如果用户单击“Cancel”按钮的话,就可以返回一个非法的颜色值,因此我们需要调用QColor::isValid()方法来判断这个颜色值是否正确。下面给出一段完整的代码:

1 void UserSettingWindow::changeColorBtnClickedSlot()
2 {
3     QColor color = QColorDialog::getColor(Qt::black);
4
5     if (color.isValid())
6     {
7         qDebug() << color.redF() << color.greenF() << color.blueF();
8     }
9 }

以上是一个响应槽函数的代码,如果得到合法的颜色值,就通过qDebug()输出。此外,这里的QColor类提供了一些获取颜色值的方法比如获取三个通道的getRgb()和getRgbF()函数,以及获取单个通道颜色的red(),redF(),green(),greenF(),blue()和blueF()函数,使用十分方便,具体的细节请查看帮助手册。

Qt标准对话框之QColorDialog,布布扣,bubuko.com

时间: 2024-10-02 22:04:21

Qt标准对话框之QColorDialog的相关文章

如何修改Qt标准对话框的文字(例如,英文改成中文)

此篇文章参考qtcn论坛整理而成,因为文字和图片是本人亲自组织,所以仍算原创. http://www.qtcn.org/bbs/read-htm-tid-30650.html http://blog.csdn.net/yangxiao_0203/article/details/7488967 如图所示,QT自带的内建标准对话框QFontDialog.QColorDialog.QMessageBox.默认的文字全是英文的.QLineEdit和QTextEdit的右键菜单,默认的文字也全是英文的.请

Qt标准对话框:QMessageBox

Qt标准对话框之QMessageBox 这次来说一下QMessageBox以及类似的几种对话框.其实,我们已经用过QMessageBox了,就在之前的几个程序中.不过,当时是大略的说了一下,现在专门来说说这几种对话框. 先来看一下最熟悉的QMessageBox::information.我们在以前的代码中这样使用过: QMessageBox::information(NULL, "Title", "Content", QMessageBox::Yes | QMess

Qt标准对话框

Qt中有9个标准对话框. 1.QColorDialog 颜色对话框,能够允许用户选择颜色. 2.QErrorMessage显示错误信息. 3.QFileDialog文件对话框,能够允许用户选的一个或者多个文件以及目录. 4.QFontDialog字体对话框,允许用户选择/设置字体.QInputDialog输入对话框,允许用户进行简单的输入. 5.QPageSetupDialog叶设置对话框,配置与页相关的打印机选项. 6.QProgressDialog 进度对话框 指示一个长时间操作的工作进度,

qt 标准对话框

if (QMessageBox::Yes == QMessageBox::question(this, tr("Question"), tr("Are you OK?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes)) { QMessageBox::information(this, tr("Hmmm..."), tr("I'm glad to hear that!&quo

第21课 Qt中的标准对话框(下)

1. 字体对话框:QFontDialog (1)Qt中提供了预定义的字体对话框类(QFontDialog) (2)QColorDialog类用于提供选择字体的对话框部件 (3)字体对话框的使用方式(见后面的实例分析) (4)QFontDialog中的实用函数: QFontDialog::getFont 2. 进度对话框:QProgressDialog (1)Qt中提供了预定义的进度对话框类(QProgressDialog) (2)QProgressDialog类用于显示进度信息 (3)QProg

Qt中的标准对话框

1.标准对话框 (1)Qt为开发者提供了一些可复用的对话框类型 (2)Qt提供的可复用对话框全部继承自QDialog类 @1:QMessageBox(用来提示消息的对话框) QFileDialog(文件对话框) QPrintDialog QColorDialog(用来选择一种颜色) QInputDialog QProgressDialog 这些对话框类型全部继承自QDialog类 (3)Qt中标准对话框遵循相同的使用方式 DialogType dlg(this); //先定义对话框对象,Dial

第19课 Qt中的标准对话框(上)

1. 标准对话框 (1)Qt为开发者提供了一些可复用的对话框类型 (2)Qt提供的可复用对话框全部继承自QDialog类 (3)Qt中的标准对话框遵循相同的使用方式(三板斧) //1.定义对话框对象(第1板斧) DialogType dlg(this); //2.设置对话框属性(第2板斧) dlg.setPropertyXXX(value); if(dlg.exec() == DialogType::value) //3.打开对话框(第3板斧) { //4.获取对话框数据 Type v = dl

第20课 Qt中的标准对话框(中)

1. 颜色对话框:QColorDialog (1)QColorDialog类 ①Qt中提供了预定义的颜色对话框类(QColorDialog) ②QColorDialog类用于提供指定颜色的对话框部件 ③颜色对话框的使用方式(见后面的实例) ④QColorDialog中的实用函数:QColorDialog::getColor (2)QColor类:用来表示颜色的概念,同时支持多种的颜色表示方式 ①RGB:以红.绿.蓝为基准的三色模型 ②HSV:以色调.饱和度.明度为基准的六角锥体模型 ③CMYK:

QT+ 使用标准对话框+关于对话框+问题对话框+文件对话框

#include "mainwindow.h" #include <QMenuBar> #include <QMenu> #include <QAction> #include <QDialog> #include<QDebug> #include <QMessageBox> #include <QFileDialog> MainWindow::MainWindow(QWidget *parent) :