QColorDialog 

Автор: | 30 октября, 2022

Пример реализации QColorDialog и получение данных из модельного окна.

Небольшой но очень информативный пример реализации получение QColor из диалогового окна.

В данном примере вызовем диалог и получим выбранное значение QColor. Полный код реализации:

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QColorDialog>
#include <QDebug>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    QColorDialog *colorDialog;
};

#endif // MAINWINDOW_H
#include "mainwindow.h"
#include "ui_mainwindow.h"


MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
     colorDialog = new QColorDialog(this);
     // устанавливаем значение
     colorDialog->setCurrentColor(QColor(0,0,255)); 
    // вызываем диалоговое окно
     colorDialog->exec(); 
    // получаем выбранное значение
     QColor color = colorDialog->selectedColor(); 
    // получаем значение в hex
     QString color1 = colorDialog->selectedColor().name();
    // выводим значение
     qDebug() << color.red() << color.green() << color.blue(); 
     qDebug() << color1;
}

MainWindow::~MainWindow()
{
    delete ui;

}

Перед запуском передаем значение, данный параметр необязателен. Дальше запустится диалоговое окно в котором можно будет выбрать цвет.

QColorDialog