2

我正在尝试通过子类化并覆盖paintEvent来自定义QPUshButton。我正在写文本,然后是如下图标:

paintEvent(QPaintEvent *paint)
    {
         QStyleOption opt;
         opt.init(this);
         QPainter p(this);
        //Draw the base
         style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);

        //Draw the text
         style()->drawItemText(&p,this->rect(),Qt::AlignCenter,(this->palette()), true, this->text());

         if(!this->icon().isNull())
            //Draw the icon at 75% button height
            style()->drawItemPixmap(&p, this->rect(),Qt::AlignRight|Qt::AlignVCenter, this->icon().pixmap(this->rect().height()  * 0.75));

    }

但是,我得到的按钮如下:

在此处输入图像描述

如果可以看到,图标图像周围有一个框。我该如何删除它?(图标尺寸看起来更大,因为我在缩小尺寸之前拍摄了快照。但是,即使图像小得多并且适合图像,框也会出现)。

4

0 回答 0