Qt - 创建 QPainter

Posted

技术标签:

【中文标题】Qt - 创建 QPainter【英文标题】:Qt - creating QPainter 【发布时间】:2009-06-17 15:50:03 【问题描述】:

我正在尝试在我的程序中重写方法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”是 初始化,虽然类型是 不完整

【问题讨论】:

您还应该知道在这种情况下不需要painter.end()。当画家超出范围时,它的析构函数会自动为您执行此操作。 【参考方案1】:

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

【讨论】:

【参考方案2】:
#include <QPainter>

【讨论】:

【参考方案3】:

你包括吗? Qt 是类前向声明​​的忠实拥护者,这会导致此类神秘错误。

【讨论】:

以上是关于Qt - 创建 QPainter的主要内容,如果未能解决你的问题,请参考以下文章

QT学习-创建第一个QT程序

在使用 Qt 创建者创建一个非常简单的项目时遇到 Qt 中的“分段错误”

Qt DLL总结-创建及调用QT的 DLL(三篇)good

如何创建qt图标

如何为非 Qt 应用程序创建 Qt 共享库

创建Qt项目