-2

我有一个旧的 c++ 程序,我需要恢复它的生命。我现在的任务是绘制一个多边形。我一开始就被困住了,因为我没有图形方面的经验。我想用来绘制 Polygen 的点存储在

QVector < QPointF> 点看起来像这样:

在此处输入图像描述

现在我想画我的多边形。我使用这段代码:

            ggScene = new QGraphicsScene();   
            QPolygonF shape(points);
            QGraphicsItem* gg = ggScene->addPolygon(shape);

编译时出现以下错误:

初始化时无法将 QGraphicsPolygonItem* 转换为 QGraphiscItem

任何人都可以帮我解决这个问题,谢谢。

4

1 回答 1

0

我会四处走动,猜测实际的错误信息是......

无法在初始化中将“QGraphicsPolygonItem*”转换为“QGraphicsItem*”

(注意QGraphicsItem*而不仅仅是QGraphicsItem

如果是这种情况,那么问题可能是编译器只看到QGraphicsPolygonItem. 因此,它不知道QGraphicsPolygonItem继承自QGraphicsItem,因此无法执行从QGraphicsPolygonItem*到的隐式转换QGraphicsItem*

修复可能是简单的添加...

#include <QGraphicsPolygonItem>
于 2018-12-07T20:02:14.260 回答