#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QStringListModel>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = nullptr);
~Widget();
private slots:
void on_listView_clicked(const QModelIndex &index);
private:
Ui::Widget *ui;
QStringListModel * model;
QStringList colorList;
};
#endif // WIDGET_H
#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
colorList = QColor::colorNames();
model = new QStringListModel(colorList,this);
ui->listView->setModel(model);
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_listView_clicked(const QModelIndex &index)
{
QPixmap mPixmap(ui->label->size());
mPixmap.fill(QColor(model->data(index,Qt::DisplayRole).toString()));
ui->label->setPixmap(mPixmap);
qDebug() << "Showing all the colors";
qDebug() << "--------------------->>> Model Internal String list " << model->stringList();
qDebug() << "--------------------->>> Original External String list " << colorList;
}