QTreeView と QGraphicsSceneView を備えた GUI があります。
ツリー ビューで使用されるモデルはドラッグ イベントをサポートし、グラフィックス シーンはドロップ イベントをサポートします。
mousePress
QTest: 、mouseMove
などでユーザー アクションをシミュレートしたいmouseRelease
。
私はこのコードを書きます:
item_rect = self.main_wnd.tree_view.visualRect(constant_index)
QtTest.QTest.mouseMove(self.main_wnd.tree_view.viewport(), item_rect.center(), 300)
QtTest.QTest.mousePress(self.main_wnd.tree_view.viewport(), QtCore.Qt.LeftButton, QtCore.Qt.KeyboardModifiers(),
item_rect.center(), 300)
QtTest.QTest.mouseMove(self.main_wnd._scene_views[None].viewport(), QtCore.QPoint(), 300)
QtTest.QTest.mouseRelease(self.main_wnd.tree_view.viewport(), QtCore.Qt.LeftButton, QtCore.Qt.KeyboardModifiers(),
constant_rect.center(), 300)
ここでは、マウスが実際にツリー アイテムの四角形に移動して選択し、ドラッグやドロップを行わずにシーンの中心に移動します。
どうすれば修正できますか?