我想移动qgraphicscene而不是移动我的整个widget(由于widget超出限制,这导致了一些图形问题)。在
这就是我要做的:
def mousePressEvent(self, event):
#super(SvgView, self).mousePressEvent(event)
self.svgItem.mousePressEvent(event)
self.x += event.pos().x()
self.y += event.pos().y()
event.accept()
(请注意,我没有以正确的方式更新self.x和self.y,因为这是一个“拖动”运动,我应该将“delta”改为“delta”,但我不知道如何获取它)
这不起作用,因为svgItem需要一个QGraphicsSceneMouseEvent
。在
我试着在场景中做这个mouseEvent,而不是在QGraphicsView上做,但它不会使项目拖。在
有没有办法不做这个转换,如果有必要我怎么做?在
对我来说SVG+Javascript是非常容易理解的,有了它我可以做任何我想做的事情。但是我正在为PyQt的桌面应用而挣扎。Avaris帮助我理解Qt中的事件传播。 我写了几行做实验,但也许这对你有帮助。不是最好的,而是“eppur si muove”:
对于你的背景,不要子类化,把它作为单独的类来构建。在
相关问题 更多 >
编程相关推荐