我正在使用Graphics View框架繪製多邊形。我添加了一個多邊形場景以這樣的:Qt - 無效轉換爲子類
QGraphicsPolygonItem *poly = scene->addPolygon(QPolygonF(vector_of_QPointF));
poly->setPos(some_point);
但我需要實現類似的選擇,鼠標指針,並在圖形項其他類似的東西,一些自定義的行爲。因此,我宣佈一個類繼承QGraphicsPolygonItem:
#include <QGraphicsPolygonItem>
class GridHex : public QGraphicsPolygonItem
{
public:
GridHex(QGraphicsItem* parent = 0);
};
GridHex::GridHex(QGraphicsItem* parent) : QGraphicsPolygonItem(parent)
{
}
沒有做多少與該類到目前爲止,你可以看到。但是不應該用我的GridHex類工作替換QGraphicsPolygonItem?這是拋出一個「從‘QGraphicsPolygonItem *’的無效轉換到‘GridHex *’」錯誤:
GridHex* poly = scene->addPolygon(QPolygonF(vector_of_QPointF));
我在做什麼錯?
哦,對,我想我在這裏做的一切都是錯的。我仍然有點熟悉框架。以前沒有想過子類化QGraphicsScene,但那就是我必須做的。 – 2010-04-23 13:38:09
所以,如果我想添加自定義項目的場景,我得到子類QGraphicsScene能夠接受我的自定義項目?我應該如何設置一個QGraphicsScene子類來添加我的自定義項目呢? – 2010-04-23 13:56:37