Мне трудно понять проблему, с которой я столкнулся во время создания класса QT, но у меня есть ощущение, что это может быть общая проблема.Проблема заключалась в том, что он работал только после того, как я использовал указатель на объект, но не работал только с самой переменной объекта.
В main () Я создаю экземпляр виджета:
Board board;
board.show();
Board.h :
class Board : public QWidget
{
Q_OBJECT
public:
Board(QWidget* parent = 0);
virtual ~Board();
};
Board.cpp
Board::Board(QWidget* parent) :
QWidget(parent)
{
QGraphicsScene* boardScene = new QGraphicsScene(this);
boardScene->setSceneRect(this->rect());
QGraphicsItem* item2 = new QGraphicsPixmapItem(QPixmap("test.jpg"));
item2->setPos(100,100);
boardScene->addItem(item2);
QGraphicsView boardView (boardScene, this);
Теперь проблемабыл в последней строке.Тестовая картинка (item2) была показана только после того, как я изменил последнюю строку, чтобы она была указателем:
QGraphicsView* boardView = new QGraphicsView (boardScene, this);
Почему переменная объекта не работает?Это из-за какой-то внутренней QT или я что-то упустил?Я также нарисовал фон boardScene и увидел цвет, так что я знаю, что он все еще "жив".