crossplatform.ru

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

 
Тема закрытаНачать новую тему
> QGraphicsView, Изменение параметров элемента в evenfilter сцены
wiz29
  опции профиля:
сообщение 7.12.2010, 17:46
Сообщение #1


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

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

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




Репутация:   12  


Доброго времени суток. Не сталкивался ли кто нибудь из вас со следующей проблемой. У меня есть QGraphicsView с установленной сценой. Есть объект QObject, который установлен в качестве eventFilter для QGraphicsScene. Проблема закл в следующем: если меняю параметры позиции QGraphicsItems в функции eventFilter то отображение в QGraphicsView корректное, когда начинаю менять, например, цвет пера для QGraphicsShapeItem вместе с позицией то получаю следующий эффект http://s61.radikal.ru/i174/1012/73/4eba2cb95a0a.jpg. Если ктото сталкивался с подобным эффектом, плиз подскажите что я делаю не так:)

Сообщение отредактировал wiz29 - 7.12.2010, 17:47
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
wiz29
  опции профиля:
сообщение 7.12.2010, 18:30
Сообщение #2


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

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

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




Репутация:   12  


Определил, на данный эффект влияет вызов QPixmap::grabWidget для содержащего данную сцену QGraphicsView . как избавится пока не знаю...:(

Цитата(wiz29 @ 7.12.2010, 18:17) *
Определил, на данный эффект влияет вызов QPixmap::grabWidget для содержащего данную сцену QGraphicsView . как избавится пока не знаю...:(

разобрался в проблеме , темуможно удалить.

Сообщение отредактировал wiz29 - 7.12.2010, 18:17
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 7.12.2010, 19:39
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9656
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


Цитата(wiz29 @ 7.12.2010, 20:30) *
разобрался в проблеме
поделись
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
wiz29
  опции профиля:
сообщение 8.12.2010, 13:19
Сообщение #4


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

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

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




Репутация:   12  


Цитата(Litkevich Yuriy @ 7.12.2010, 19:39) *
Цитата(wiz29 @ 7.12.2010, 20:30) *
разобрался в проблеме
поделись

Вот что удалось выяснить.
Если последовательность действий в eventFilter такая то все работает корректно:
1. grabWidget
2. для QGraphicsItem -> setPos(x,y);
тогда все работает корректно
если же поменять пункты 1и 2 местами то появляется тот эффект, про который я говорил в 1м посте. Думаю все дело в grabWidget.
! все эти действия выполняются в эвент фильтре, это особенность. Возможно, при другом раскладе все будет работать корректно.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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




RSS Текстовая версия Сейчас: 1.6.2020, 19:30