#include<QComboBox>
public中:
void creatColorComboBox(QComboBox *comboBox);
private slot中
void on_comboBoxBrush_currentIndexChanged(int index);捕虾笼
cpp⽂件
先初始化:
rgd-208creatColorComboBox(ui->comboBoxBrush);洗手器
void ledmain::creatColorComboBox(QComboBox *comboBox)
{
QPixmap pix(16,16);
QPainter painter(&pix);止痒沐浴露
painter.fillRect(0,0,16,16,Qt::red);
comboBox->addItem(QIcon(pix),tr("红⾊"),QColor(Qt::red));
painter.fillRect(0,0,16,16,Qt::white);
comboBox->addItem(QIcon(pix),tr("⽩⾊"),QColor(Qt::white));
painter.fillRect(0,0,16,16,Qt::black);
comboBox->addItem(QIcon(pix),tr("⿊⾊"),QColor(Qt::black));
painter.fillRect(0,0,16,16,Qt::green);
comboBox->addItem(QIcon(pix),tr("绿⾊"),QColor(Qt::green));
painter.fillRect(0,0,16,16,Qt::blue);
comboBox->addItem(QIcon(pix),tr("蓝⾊"),QColor(Qt::blue));
painter.fillRect(0,0,16,16,Qt::yellow);
comboBox->addItem(QIcon(pix),tr("黄⾊"),QColor(Qt::yellow));
comboBox->addItem(tr("不选"),QColor(Qt::transparent));
}
void ledmain::on_comboBoxBrush_currentIndexChanged(int index)
{
QColor color = ui->comboBoxBrush->itemData(index,Qt::UserRole).value<QColor>();
penColor=color;
//setPenColor(color);
}
运⾏效果: