QGraphicsSimpleTextItem “无效的使用不完全类型的”

问题描述:

我的代码如下:QGraphicsSimpleTextItem “无效的使用不完全类型的”

pointerwidget.h

QGraphicsSimpleTextItem *text; 

pointerwidget.cpp

void PointerWidget::placeNumbers(float spacing, int currentTickNumber) 
{ 
    float label = spacing/scaleFactor; 
    text = scene->addSimpleText(QString::number(label),QFont("Comic Sans MS", 12, QFont::Bold)); 
    text->setPos(currentTickNumber*spacing,30); 
} 

无处不在,我读说,使用setPos( x,y)来定位文本项目。这是QGraphicsItem的一个功能。我得到“不完整类型的无效使用”类QGraphicsSimpleTextItem'“的错误。为了进一步确认出现问题,Qt Creator不会“识别”或尝试“自动完成”函数调用。

如果它注释掉给我错误的那一行,我会得到一堆位于(0,0)处的简单文本。点是,它不是给我错误的addSimpleText()函数。

任何想法?

谢谢!

您需要包括QGraphicsSimpleTextItem包括文件:

#include <QGraphicsSimpleTextItem> 

你必须有一个向前声明的类的地方,这样的指针可以在包含文件中声明,但实际的类定义不包括在内,所以编译器不知道如何处理你的变量text