ich habe mir eine QGraphicsRectItem Klasse abgeleitet und darin ein QGraphicsSvgItem eingebettet, zusammen mit einem Kopierkonstruktor.
Code: Alles auswählen
class Myrect : public QObject, public QGraphicsRectItem {
Q_OBJECT
private:
QGraphicsSvgItem *my_svg;
protected:
public:
Myrect(QString fileName, QGraphicsItem *parent = 0);
Myrect(const Myrect &item);
void setRect(qreal x, qreal y, qreal w, qreal h);
};
Myrect(QString fileName, QGraphicsItem *parent = 0) {
my_svg = new QGraphicsSvgItem(fileName);
}
Myrect::Myrect(const Myrect &item) {
}
void Myrect::setRect(qreal x, qreal y, qreal w, qreal h) {
QGraphicsRectItem::setRect(x, y, w, h);
my_svg->setPos(x, y);
}
Code: Alles auswählen
Myrect *my_new_rect0;
my_new_rect0 = new Myrect("/der/pfad/zur/datei.svg");
my_new_rect0->setRect(50, 50, 300, 300);
Myrect *my_new_rect1;
my_new_rect1 = new Myrect(*my_new_rect0);
my_new_rect1->setRect(50, 50, 300, 300);