Пример реализации 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; }
Перед запуском передаем значение, данный параметр необязателен. Дальше запустится диалоговое окно в котором можно будет выбрать цвет.
