crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Проблемы с рисованием в QGraphicsView
wiz29
  опции профиля:
сообщение 28.9.2010, 14:37
Сообщение #1


Старейший участник
****

Группа: Участник
Сообщений: 600
Регистрация: 7.7.2010
Из: Санкт-Петербург
Пользователь №: 1866

Спасибо сказали: 94 раз(а)




Репутация:   12  


Ребят подскажите. Имеется QGraphicsView, я переоприделил функцию paint следующим образом
        QPainter p(viewport());
        //sync for scene
        QPointF offsetPoint(mapFromScene(0, 0));        
        QTransform tr;
        //calc transform
        tr.translate(offsetPoint.rx(),
                     offsetPoint.ry());
        tr = transform() * tr;
        //draw transformed image
        p.setTransform(tr);
        p.drawImage(0, 0, m_image);

Почемуто не обновляет данные из m_image, если не скролю картинку, например. Такое впечатление что подсистема рисвания где то кэширует данные.

Эффект такой, первый раз нарисовали картинку правильно, далее меняю содержимое m_image, вызываю QGraphicsView::update(), ничего не меняется,
может кто то сталкивался с подобными вещами?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов (1 - 2)
igor_bogomolov
  опции профиля:
сообщение 28.9.2010, 15:10
Сообщение #2


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Попробуй
graphicsView->viewport()->update();
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
wiz29
  опции профиля:
сообщение 28.9.2010, 15:17
Сообщение #3


Старейший участник
****

Группа: Участник
Сообщений: 600
Регистрация: 7.7.2010
Из: Санкт-Петербург
Пользователь №: 1866

Спасибо сказали: 94 раз(а)




Репутация:   12  


Цитата(igor_bogomolov @ 28.9.2010, 16:10) *
Попробуй
graphicsView->viewport()->update();

Да действительно помогло, этот медот у меня почемуто стоял в комменте:)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.12.2024, 9:34