首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QTest:可以测试拖放吗?

QTest:可以测试拖放吗?
EN

Stack Overflow用户
提问于 2012-07-16 16:47:35
回答 1查看 937关注 0票数 5

我试着用简单的序列来测试拖放: mousePress + mouseMove + mouseRelease。但这不是工作。

我调查了qtest源代码,发现通过主分派器processEvent()测试移动事件。另外,我在qt bug-tracker中发现了一些bug:12

所以,我认为,在最新稳定的Qt4下测试拖放是不可能的。有没有人在这方面取得了成功?

EN

回答 1

Stack Overflow用户

发布于 2013-07-29 07:06:38

我没有机会通过QTest鼠标功能来模拟拖放,而且digia says他们没有在QT4中添加这个功能。我通过与上面链接中建议的方法类似的方法实现了拖放测试:

创建您的mime_data,类似于:

代码语言:javascript
复制
mime_data = widget_model.mimeData(indexes)

代码语言:javascript
复制
mime_data = QMimeData()
mime_data.setText(widget.text())

然后使用像这样的函数来删除数据:

代码语言:javascript
复制
def dropOnto(self, widget, mime_data):
    action = Qt.CopyAction|Qt.MoveAction
    pt = widget.rect().center()
    drag_drop = QDropEvent(pt, action, mime_data, Qt.LeftButton, Qt.NoModifier)
    drag_drop.acceptProposedAction()
    widget.dropEvent(drag_drop)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11500844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档