QGraphicsView |
Здравствуйте, гость ( Вход | Регистрация )
QGraphicsView |
epishev |
24.3.2011, 12:30
Сообщение
#1
|
Студент Группа: Участник Сообщений: 89 Регистрация: 23.3.2011 Пользователь №: 2533 Спасибо сказали: 0 раз(а) Репутация: 0 |
Все привет!
Есть вопрос по QgraphicsView не пойму что делаю не так..... ui->graphicsView->setScene(&scene); QGraphicsRectItem* pRectItem = new QGraphicsRectItem(0,&scene); pRectItem->setFlag(QGraphicsItem::ItemIsMovable); QGraphicsPixmapItem* pPixmapItem = scene.addPixmap(QPixmap("D:/Qt projects/LevelEditor-build-desktop/lua.png")); pPixmapItem->setFlag((QGraphicsItem::ItemIsMovable)); ui->graphicsView->show(); запускаю картинки нет.... Подскажите что я делаю не так... Заранее большое спасибо! PS использую Qt Creator, graphicsView добавил используя готовые виджиты, ошибки компилятор не выдает. |
|
|
abc |
24.3.2011, 12:50
Сообщение
#2
|
Участник Группа: Участник Сообщений: 221 Регистрация: 16.12.2010 Из: СПб Пользователь №: 2272 Спасибо сказали: 26 раз(а) Репутация: 4 |
Сцена, если она не член класса, должна быть создана через оператор new. У тебя я не знаю как, поэтому отмечаю этот момент.
new QGraphicsRectItem(0,&scene); такого конструктора у итемов нет. Присмотрись итемы на сцену добавляются через addItem() QGraphicsPixmapItem* pPixmapItem = scene.addPixmap(QPixmap("D:/Qt projects/LevelEditor-build-desktop/lua.png")); замени так: QGraphicsPixmapItem* pPixmapItem = scene.addPixmap(QPixmap(QCoreApplication::applicationDirPath()+"/lua.png")); QCoreApplication::applicationDirPath() - возвращает каталог с твоим экзешником что-то в твоём пути программу волнует, возможно пробел Сообщение отредактировал abc - 24.3.2011, 13:19 |
|
|
epishev |
24.3.2011, 14:01
Сообщение
#3
|
Студент Группа: Участник Сообщений: 89 Регистрация: 23.3.2011 Пользователь №: 2533 Спасибо сказали: 0 раз(а) Репутация: 0 |
abc, большое спасибо, заработала =)
abc, большое спасибо, заработала =) ошибочка вышла, ничего не работает =( пишу: QGraphicsScene scene(QRectF(-100,-100,200,200)); QGraphicsPixmapItem* pPixmapItem = scene.addPixmap(QPixmap(QCoreApplication::applicationDirPath()+"/lua.png")); pPixmapItem->setFlag((QGraphicsItem::ItemIsMovable)); ui->graphicsView->setScene(&scene); |
|
|
PAFOS |
24.3.2011, 14:07
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 258 Регистрация: 27.12.2010 Из: Дмитров Пользователь №: 2309 Спасибо сказали: 29 раз(а) Репутация: 8 |
Тебе же сказали
Цитата Сцена, если она не член класса, должна быть создана через оператор new. а ты опять за свое
Сцена у тебя уничтожается сразу после выхода из метода |
|
|
Текстовая версия | Сейчас: 18.1.2025, 2:41 |