在Qt5中更改QGraphicsScene / View中的Pixmap位置

时间:2014-10-07 13:40:40

标签: c++ qt

我有一个普通的QGraphicsView / QGraphicsScene,我想要做的就是将QPixmap(.png)加载到图形中并手动设置该QPixmap图像的位置。我找到了解决方案,但它们不适用于Qt5。关于如何在Qt5上实现这一点的任何想法?谢谢。

QGraphicsScene* scene = new QGraphicsScene(QRect(0, 0, 600, 400));

QPixmap Pix(":/test.gif");

// doesnt work
//Pix.setGeometry(QRect(-30, 40, 260, 200));


QGraphicsPixmapItem *item1 = scene->addPixmap(Pix);

// doesnt work
//item1->setPos(-25, 45);
//scene->addPixmap(Pix)->setPos(0,0);

//QGraphicsView* view = new QGraphicsView(ui->centralWidget);

QGraphicsView* view = new QGraphicsView(this);

view->setScene(scene);

2 个答案:

答案 0 :(得分:0)

如果在实现中使用QGraphicsPixmapItem,或者确实是任何Qt对象,则需要将其包含在cpp中: -

#include <QGraphicsPixmapItem>

答案 1 :(得分:0)

您可以从计算机浏览图像并设置其位置。 以防万一,它可以帮助某人。

        QString fileNamez = QFileDialog::getOpenFileName(this,"Open Filezzz","C:/");
         QGraphicsPixmapItem *pm = scene->addPixmap( QPixmap(fileNamez) );
         pm->setPos(xPos,yPos);