Возникли проблемы при рисовании изображения в Qt с использованием QGraphicsScene
Код ниже загружает изображение, используя QLabel. Код использует: myLabel.setMask(pixmap.mask()); и работает как надо. Проблема возникает, когда я пытаюсь загрузить изображение с помощью QGraphicsScene.
#include <QApplication> #include <QLabel> #include <QtGui> int main(int argc, char *argv[]) { QApplication app(argc, argv); QLabel myLabel; QPixmap pixmap("/path/tomy/image.jpg"); myLabel.setPixmap(pixmap); myLabel.setMask(pixmap.mask()); myLabel.show(); return app.exec(); }
В этом коде я пытаюсь сделать то же самое, что и выше, но использую QGraphicsScene. Растровое изображение загружается правильно, после этого я не уверен, почему программа не работает должным образом. Это потому, что нет операции setMask()? Или отсутствует операция, которая необходима, чтобы сделать изображение видимым?
#include <QtGlobal> #if QT_VERSION >= 0x050000 #include <QtWidgets> #else #include <QtGui> #endif int main(int argc, char *argv[]) { QApplication a(argc, argv); QPixmap pixmap("/path/tomy/image.jpg"); QGraphicsPixmapItem item( pixmap); QGraphicsScene* scene = new QGraphicsScene; scene->addItem(&item); QGraphicsView view(scene); view.show(); return a.exec(); }