| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > QGraphicsView и панель с кнопками в углу |
| Автор: becks 7.5.2013, 14:06 | ||||
Добрый день, хочу на QGraphicsView сделать,например, в нижнем правом углу прозрачную панель с кнопками, чтобы при прокрутке, ресайзе и прочем она всегда оставалась на своем месте. Делаю через QGraphicsProxyWidget:
Теперь делаю реакцию на ресайз и скроллы:
Получается сущая ерунда, при скроле она улетает непонятно куда. Скорее всего я неправильно вычисляю новые координаты. Но сам подход правильный? И только что заметил, что при изменении масштаба виджет тоже изменяет масштаб, можно ли как-нибудь запретить ему менять масштаб? |
| Автор: Sovereign 8.5.2013, 07:43 |
| У QGraphicsItem можно установить флаг ItemIgnoresTransformations, попробуй с ним. |
| Автор: becks 8.5.2013, 11:19 | ||||||
Ага, вечером уже вчера сделал. И переделал scrollContentsBy:
Теперь панель не изменяет размер при scale и при прокрутке оказывается в нужном месте. Остались следующие проблемы: 1) При прокрутке бывает остается шлейф от панельки. 2) При scale панель теперь размер не изменяет, но по чуть-чуть съезжает, по скольку пересчета положения не происходит. Я делал после scale:
но ничего не изменилось |