0

我需要在 QGraphicsScene 上放置一张可点击的图片。我是这样做的:

class myGraphicsPixmapItem: public QGraphicsPixmapItem 
{
public:
    myGraphicsPixmapItem() { }

    ~myGraphicsPixmapItem() {}

    void mousePressEvent(QGraphicsSceneMouseEvent* event)
    {
        qDebug() << "Clicked!";

    }
};


QPixmap pic;
pic.load(":/img/pic.png");

QGraphicsScene* scene = new QGraphicsScene();
view = new GraphicsView(scene);

myGraphicsPixmapItem* pixmapItem = new myGraphicsPixmapItem;
pixmapItem->setPixmap(pic);
scene->addItem(pixmapItem);

但我不知道如何使它变小。请告诉,如何制作更小的 QGraphicsPixmapItem 或者是否有另一种方法可以在 QGraphicsScene 上放置可点击和可调整大小的图片?

4

1 回答 1

1

您应该使用缩放的QPixmap::scaled而不是 QGraphicsPixmapItem 。示例代码:

QPixmap bgPixmap(fileName);
QPixmap scaled = bgPixmap.scaled(QSize(64, 64));

并使用 scaled 作为您的 QPixmap 。

于 2018-04-06T06:33:16.540 回答