QT 使用 QLabel 实现圆形头像及鼠标悬停效果

原链接
看到个很好效果的实现,代码如下

    QString file = "F:\\我的文档\\eer\\user\\188\\Head\\custom.png";
    QPixmap pixmapa(file);
    QPixmap pixmap(40,40);
    pixmap.fill(Qt::transparent);
    QPainter painter(&pixmap);
    painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
    QPainterPath path;
    path.addEllipse(1, 1, 40, 40);
    painter.setClipPath(path);
    painter.drawPixmap(1, 1, 40, 40, pixmapa);
    ui.labelFace->setPixmap(pixmap);

加入鼠标移上去在圆形图片周围加个圈圈,类似qq头像鼠标移上去的效果
加入样式

QLabel:hover{
border-width: 2px;
border-style: solid;
border-radius:21px;
border-color:rgb(0, 177, 252);
}

你可能感兴趣的:(QT)