Function;
自定义 Supercolordialog 替换 QColordialog 之 给控件上色;
Code;
class private parameter; QVector<QVector<QVector<int>>> Colorvector; class protected function; [virtual protected] void QWidget::paintEvent(QPaintEvent *event) { Q_UNUSED(event); QPainter painter(this); for(int i = 0;i < width();i++) { for(int j = 0;j < height();j++) { QColor colortemp(Colorvector.at(i).at(j).at(0),Colorvector.at(i).at(j).at(1),Colorvector.at(i).at(j).at(2)); painter.setPen(colortemp); painter.drawPoint(i,j); } } }
Explain;
重写QLabel paintEvent虚函数,并忽略paintevent;
给控件每个像素点分配不同的颜色(依据 i , j 为参数可以自定义颜色);
Result;