QPixmap,如何确定它是'always on top'

QPixmap, how to make sure it is 'always on top'

对于小部件,我可以调用 'raise',它使小部件位于其他任何东西之上,但这似乎不适用于任何渲染的 QPixmap。

我怎样才能确保 QPixmap 保持在其他任何东西之上?

在我的 paintEvent 函数中:

    QPainter objPainter(this);

    if ( strImage.isEmpty() != true ) {
        qint16 int16NudgeImageX = mpobjNode->int16GetAttr(clsXML::mscszAttrNudgeImageX)
              ,int16NudgeImageY = mpobjNode->int16GetAttr(clsXML::mscszAttrNudeImageY);
        QPixmap pmImage(":/" + strImage);
        QSize szImage = pmImage.size();
        QPoint ptImage(rctGeom.center().x() - (szImage.width() / 2) + int16NudgeImageX
                      ,rctGeom.center().y() - (szImage.height() / 2) + int16NudgeImageY);
        QRect rctImage(ptImage, szImage);
        objPainter.drawPixmap(rctImage, pmImage);
    }

QPixmap 不是小部件(没有父级,也没有布局)。

The QPixmap class is an off-screen image representation that can be used as a paint device.

使用 QLabel 与父级(和布局)一起使用

QLabel* label = new QLabel(parent);
label->setPixmap(pixmap);

如果您想确保您的 QPixmap 绘制在小部件内所有其他内容之上,只需最后绘制即可。 请记住,其他小部件可能会绘制在您的小部件上方。