Krolick
@Krolick
...не только ценный мех!

Как мне протестировать Drag-and-Drop в Qt?

У меня есть графический интерфейс, написанный на PyQt. В нём активно используется drag-and-drop с одного виджета на другой (таскаем объекты с Item View, скидываем на Graphics Scene).

Хочу я протестировать мой GUI с помощью QTest.
Пишу код примерно такого плана:

QtTest.QTest.mouseMove(self.main_wnd.tree_view.viewport(), constant_rect.center(), 300)
        QtTest.QTest.mousePress(self.main_wnd.tree_view.viewport(), QtCore.Qt.LeftButton, QtCore.Qt.KeyboardModifiers(),
                                constant_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)


Однако не тут-то было: да, указатель мышки куда надо перемещается, нужный элемент в Item View выделяется, а затем перемещается и в центр моей сцены. Но ни Drag Event, ни Drop Event, к сожалению, там не происходит.
Имею спросить: а как бы это забороть?
  • Вопрос задан
  • 480 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы