一、颜色对话框

Qt中提供了预定义的颜色对话框QColorDialog类
QColorDialog类用于提供指定颜色的对话框部件

颜色对话框的使用方式

image.png
Qt中QColor类用来在程序中表示颜色的概念
QColor类同时支持多种颜色表示方式
RGB:是以红、绿、蓝为基准的三色模型
HSV:是以色调,饱和度,明度为基准的六角锥体模型
CMYK:以天蓝、品红、黄色、黑为基准的全彩印刷色彩模型

二、编程实验颜色对话框使用实例20-1.pro:

#include "Widget.h"
#include <QDebug>
#include <QColorDialog>
#include <QInputDialog>

Widget::Widget(QWidget *parent) : QWidget(parent),
    ColorDialogBtn(this), InputDialogBtn(this)
{
    ColorDialogBtn.setText("Color Dialog");
    ColorDialogBtn.move(20, 20);
    ColorDialogBtn.resize(160, 30);

    InputDialogBtn.setText("Input Dialog");
    InputDialogBtn.move(20, 70);
    InputDialogBtn.resize(160, 30);

    resize(200, 120);
    setFixedSize(200, 120);

    connect(&ColorDialogBtn, SIGNAL(clicked()), this, SLOT(ColorDialogBtn_Clicked()));
    connect(&InputDialogBtn, SIGNAL(clicked()), this, SLOT(InputDialogBtn_Clicked()));
}

void Widget::ColorDialogBtn_Clicked()
{
    QColorDialog dlg(this); //设置颜色对话框

    dlg.setWindowTitle("Color Editor");  //颜色对话框标题
   // dlg.setCurrentColor(Qt::green);
    dlg.setCurrentColor(QColor(111,222,255));
    if( dlg.exec() == QColorDialog::Accepted )
    {
        QColor color = dlg.selectedColor();

        qDebug() << color;
        qDebug() << color.red();
        qDebug() << color.green();
        qDebug() << color.blue();
        qDebug() << color.hue();
        qDebug() << color.saturation();
        qDebug() << color.value();
    }
}

void Widget::InputDialogBtn_Clicked()
{
    QInputDialog dlg(this);

    dlg.setWindowTitle("Input Test");
    dlg.setLabelText("Please input an integer:");
    dlg.setInputMode(QInputDialog::TextInput);


    if( dlg.exec() == QInputDialog::Accepted )
    {
        qDebug() << dlg.textValue();
    }
}

Widget::~Widget()
{
    
}

QColorDialog中的实用函数
QColorDialog::GetColor

三、输入对话框

Qt中提供了预定义的输入对话框QInputDialog类
QInputDialog类用于需要临时进行数据输入的场合
image.png

输入对话框的使用方式:
image.png
输入对话框的输入模式
image.png

四、输入对话框使用实例

QInputDialog中的实用函数
QInputDialog::getDouble
QInputDialog::getInt
QInputDialog::getItem
QInputDialog::getText

五、小结

QColorDialog类用于提供指定颜色的对话框部件
QColor类用来在程序中表示颜色的概念
QInputDialog类用于需要临时进行数据输入的场合


YingLi
6 声望4 粉丝

From zero to hero.