масштабировать QImage в Qt

Какой самый простой способ нарисовать изображение в качестве фона для QGraphicsRectItem?
Я могу установить фон следующим образом, но я не могу масштабировать изображение:

 QGraphicsRectItem *enemyItem;

QImage *image = new QImage(":/PaperMario.png");

QBrush *brush = new QBrush(*image);enemyItem = new QGraphicsRectItem();
enemyItem->setBrush(*brush);

enemyItem->setRect(enemy->getXPos()*30,enemy->getYPos()*30,30,30);
scene->addItem(enemyItem);

внутри QGraphicsRectItem

void MySquare::setBrush(QColor _color){
color = _color;
color_pressed = _color;
update(); //repaint
}

Я попробовал это с помощью:

QBrush *brush = new QBrush(*image->scaled(10));

Но я застрял: не хочет компилировать.
Это способ сделать это?

Редактировать:

    QImage *image = new QImage(":/PaperMario.png");
QImage *scaled_image = new QImage(image->scaled(35,35,Qt::KeepAspectRatio));
QBrush *brush = new QBrush(*scaled_image);

Нарисовывает ли это, но все равно показывает изображение на чертеже несколько раз
введите описание изображения здесь

-2

Решение

когда вы отображаете свое изображение в сцене (что я бы догадался), почему вы не используете QGraphicsScene::addPixmap(QPixmap) и использовать QPixmap::fromImage ( const QImage & image, Qt::ImageConversionFlags flags = Qt::AutoColor ) чтобы получить ваше изображение в правильном формате.

2

Другие решения

*image->scaled(10) не работает на QImage*, Либо ты пишешь *image.scaled или лучше) image->scaled,

0

По вопросам рекламы [email protected]