chenkf 发表于 2016-6-3 16:16:47

qt5显示不规则图标问题

本帖最后由 chenkf 于 2016-6-3 16:22 编辑

在虚拟机的ubuntu linux系统中能正常显示图标,如图:见附件(第一张图)

但是 移植到rk3288开发板上面显示的效果就不正常了,图标的圆角部分有些褐色的色块,见 图中红色圈圈,圈出的区域(由于在开发无法截图,就手绘了)。见附件(第二张图)

请问什么回事呢


实现代码如下

CycleProgress::CycleProgress(QWidget *parent) :
    QWidget(parent), minLoops(3)
{
    setWindowFlags(Qt::FramelessWindowHint|Qt::WindowStaysOnTopHint);
    m_rotation = 0.0;
    timerID = 0;
    m_pixmap = QPixmap(PIC_FILENAME("ico_loading"));
    setFixedSize(m_pixmap.width(),m_pixmap.height());

    setAttribute(Qt::WA_TranslucentBackground);

    bgimg= QPixmap(PIC_FILENAME("frame_loading"));
    setMask(bgimg.mask());
}



void CycleProgress::paintEvent(QPaintEvent * event)
{
    QWidget::paintEvent(event);
    QPainter painter(this);
    painter.setRenderHint(QPainter::Antialiasing);
    painter.setRenderHint(QPainter::SmoothPixmapTransform);

    painter.drawPixmap(this->rect(),bgimg);
    if(1){

      QPointF center(m_pixmap.width() / qreal(2), m_pixmap.height() / qreal(2));
      painter.translate(center);
      painter.rotate(m_rotation);
      painter.translate(-center);

      painter.drawPixmap(QPointF(0, 0), m_pixmap);
    }
}



页: [1]
查看完整版本: qt5显示不规则图标问题