[Программирование]  [Qt] QGraphicsScene и странные глюки...
Сообщение было послано: Ф-ликс (Gigant.mipt.su)
Дата: Четверг, Апрель 20 15:20:54 2017


Есть у меня, братцы, QGraphicsScene с несколькими объектами на ней. И когда я таскаю их мышкой, то при достижении левого края экрана сцена не просто увеличивается в размерах (что правильно), но увеличивается чертовски сильно (едва ли не вдвое) и скачкообразно (что не есть хорошо).

Вот небольшая демка (там надо перетащить один из квадратиков к левому краю экрана).

import sys

from PyQt5 import QtWidgets, QtGui, QtCore
from PyQt5.QtWidgets import QGraphicsItem, QGraphicsTextItem, QGraphicsRectItem

if __name__ == "__main__":

    #########################################
    sys._excepthook = sys.excepthook
    def exception_hook(exctype, value, traceback):
        sys._excepthook(exctype, value, traceback)
        sys.exit(1)
    sys.excepthook = exception_hook
    ##########################################



    app = QtWidgets.QApplication(sys.argv)

    view = QtWidgets.QGraphicsView()
    view.setRenderHint(QtGui.QPainter.Antialiasing)
    view.setMouseTracking(True)
    view.setDragMode(QtWidgets.QGraphicsView.RubberBandDrag)

    scene = QtWidgets.QGraphicsScene()

    rect_item = QGraphicsRectItem(-50, -50, 100, 100)
    rect_item.setFlags(QGraphicsItem.ItemIsSelectable | QGraphicsItem.ItemIsFocusable | QGraphicsItem.ItemIsMovable)
    scene.addItem(rect_item)


    rect_item2 = QGraphicsRectItem(-50, -50, 100, 100)
    rect_item2.setFlags(QGraphicsItem.ItemIsSelectable | QGraphicsItem.ItemIsFocusable | QGraphicsItem.ItemIsMovable)
    scene.addItem(rect_item2)

    rect_item2.setPos(-120, -120)

    view.setScene(scene)
    view.showMaximized()

    sys.exit(app.exec_())


Имею спросить: а как бы мне это забороть?


Сообщения в этом потоке
+ [Программирование]  [Qt] QGraphicsScene и странные глюки... (362) - Ф-ликс (Gigant.mipt.su) - 20/4/2017 15:20
Ответить

Имя:   Пароль:    Автологин
Тема:
        

Отключить распознавание Тегов конференции
Отключить распознавание смайл-кодов
Получать уведомления об ответах по почте

 

Конференция основана на движке WWWConf 2.0 PRE BETA5, поддерживается и модерируется группой энтузиастов.