0

我的代码如下:

指针小部件.h

QGraphicsSimpleTextItem *text;

指针小部件.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 的一个函数。我收到“无效使用不完整类型'class QGraphicsSimpleTextItem'”的错误。为了进一步确认有什么问题,Qt Creator 不会“识别”或尝试“自动完成”函数调用。

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

有任何想法吗?

谢谢!

4

1 回答 1

0

您需要包含QGraphicsSimpleTextItem包含文件:

#include <QGraphicsSimpleTextItem>

您必须在某处对类进行前向声明,以便可以在包含文件中声明指针,但不包含实际的类定义,因此编译器不知道如何处理您的text变量。

于 2017-03-07T21:23:00.473 回答