通过 QWidget 类在 QML 中的事件处理程序
Posted
技术标签:
【中文标题】通过 QWidget 类在 QML 中的事件处理程序【英文标题】:event handler in QML through QWidget class 【发布时间】:2010-11-19 10:17:18 【问题描述】:我在触摸笔记本上处理 QML 事件时遇到了一些问题,onPressed 事件、onPressAndHold 事件不起作用,没有调试消息。我尝试通过 Qt 类处理事件,但我失败了(使用 QDeclarativeView 连接 QML 和 Qt)。
如何编写全局事件处理程序,在笔记本上注册 QML 触摸事件。
谢谢。
【问题讨论】:
【参考方案1】:您可以使用 C++ 中的事件过滤器。例如。如果您在 QApplication 子类中重新实现 QApplication::notify ,您应该能够挂钩任何东西。检查您的应用程序是否适用于其他(基于鼠标的)平台可能很有用。 QML 的 MouseArea 使用鼠标事件而不是触摸。如果您的平台仅使用触摸事件,并且不伪造鼠标事件 - 您可能需要查看手势区域研究 QML 插件; http://qt.gitorious.org/qt-labs/qml-gesturearea
【讨论】:
以上是关于通过 QWidget 类在 QML 中的事件处理程序的主要内容,如果未能解决你的问题,请参考以下文章