Python Qt无法正确跟踪我的鼠标提示

时间:2019-02-25 23:14:55

标签: python pyqt pyqt5 vtk

我认为qt Python存在问题,无法正确跟踪鼠标提示。问题很简单,我单击并拖动以创建一个框或矩形的轮廓,但是鼠标尖端和轮廓框未对齐。它仅在我使用的Mac上存在问题,但是在Windows或Linux上运行正常。

我有一些代码可以生成一个屏幕进行测试。

import sys
import vtk
from vtk.qt.QVTKRenderWindowInteractor import QVTKRenderWindowInteractor
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5 import Qt


class QtVtkMouseTest(QWidget):
    def __init__(self):
        super().__init__()

        self.main = Qt.QMainWindow()
        self.main.__init__()
        self.frame = Qt.QFrame()
        self.widget = QVTKRenderWindowInteractor(self.frame)
        self.hl = Qt.QHBoxLayout()
        self.bl = Qt.QVBoxLayout()
        self.hl.addWidget(self.widget)
        self.hl.addLayout(self.bl)
        self.frame.setLayout(self.hl)
        self.main.setCentralWidget(self.frame)
        self.main.show()
        self._initialize_view()

    def _initialize_view(self):
        renderer = vtk.vtkRenderer()
        renderer.SetBackground((.3, .08, 0))
        self.widget.GetRenderWindow().AddRenderer(renderer)

        interactor_style = vtk.vtkInteractorStyleRubberBand2D()
        interactor = self.widget.GetRenderWindow().GetInteractor()
        interactor.SetInteractorStyle(interactor_style)

        self.widget.GetRenderWindow().Render()


def cede_to_qt_vtk_mouse_test():
    app = QApplication(sys.argv)
    gui = QtVtkMouseTest()
    sys.exit(app.exec_())


cede_to_qt_vtk_mouse_test()

这将产生一个红色屏幕,当我单击并按住左下角并延伸到右上角时,鼠标尖端和框将不同步。我有一张图片,但要真正看到它,请观看视频。观看鼠标和盒子,它们不同步。这是我要解决的问题。如果您有任何建议,请告诉我。

谢谢

https://www.youtube.com/watch?v=SnMWNfRsUA0

缺少匹配的鼠标提示和位置

0 个答案:

没有答案