我正在尝试在我的程序中重写方法 paintEvent 并进行更改。

void MainWindow::paintEvent(QPaintEvent *event)
{
    QRegion reg = this->bgPixmapHandle->rect();
    QPainter painter(this);

    painter.setClipRegion(reg);
    painter.drawImage(bgPixmapHandle->rect(), bgPixmapHandle);
    painter.end();
}

在这里,我尝试更改 bg 图像。但是我在网上得到了一个错误: QPainter painter(this);

  

错误:变量'QPainter painter'是   初始化,虽然类型是   不完整的

有帮助吗?

解决方案

包含QPainter头文件。 QPainter类仅在您在该翻译单元中包含的Qt标头之一中进行前向声明。

其他提示

#include <QPainter>

你包括在内吗? Qt是前进声明类的忠实粉丝,它会导致如此神秘的错误。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top