目的
有些图片是来自网络下载的图片,无法通过qss去动态更新显示成圆角图片,需要代码手工转换下。
void drawRoundedIcon(QLabel* label, QPixmap pixmap) {
// 画成圆形图片
int width = label->width();
int height = label->height();
QSize size(width, height);
QBitmap mask(size);
QPainter painter(&mask);
painter.setRenderHint(QPainter::Antialiasing);
painter.setRenderHint(QPainter::SmoothPixmapTransform);
painter.fillRect(0, 0, size.width(), size.height(), Qt::white);
painter.setBrush(QColor(0, 0, 0));
painter.drawRoundedRect(0, 0, size.width(), size.height(), 4, 4);//修改这个值,可以改弧度,和直径相等就是圆形
QPixmap image = pixmap.scaled(size);
image.setMask(mask);
label->setPixmap(image);
}