我添加了多个椭圆我QGraphicsScene:如何在继承QGraphicsEllipseItem添加到QGraphicsScene
QGraphicsEllipseItem *ellipse;
ellipse = sceneCenter->addEllipse(xCor-4,yCor-4,imgW+7,imgH+7,blackpen,redBrush);
现在,我想补充hoverEnterEvent所以每次我拖我的鼠标,这些椭圆它会做一些时间,所以我做了此类:
#include <QGraphicsEllipseItem>
#include <QMessageBox>
class myEllipse : public QGraphicsEllipseItem
{
public:
myEllipse(QGraphicsEllipseItem* parent);
void hoverEnterEvent(int index);
};
#endif // MYELLIPSE_H
#include "myellipse.h"
myEllipse::myEllipse(QGraphicsEllipseItem* parent):QGraphicsEllipseItem(parent){
setAcceptHoverEvents(true);
}
void myEllipse::hoverEnterEvent(int index){
QMessageBox q;
q.setText("hello");
q.exec();
}
我想用上面的类创建的对象替换QGraphicsEllipseItem。我该怎么做呢?
战利品在[QGraphicsScene ::的addItem(*的QGraphicsItem)](http://qt-project.org/doc/qt-4.8/qgraphicsscene.html#addItem) – jbh 2014-09-01 12:09:57
@jbh我知道如何添加正常的QGraphicsItem。我只是不知道如何添加继承。我试图添加像正常,但它说无效转换QGraphicsEllipseItem *到myEllipse *。 – 2014-09-01 12:17:16
'addEllipse'只是一个简写。在你的椭圆项目(位置,画笔等)上设置你想要的属性,然后将它添加到你的场景中。 – jbh 2014-09-01 12:19:01