【问题标题】:How to get TouchEvent on Windows desktop for OpenFL app?如何在 Windows 桌面上为 OpenFL 应用程序获取 TouchEvent?
【发布时间】:2013-11-04 02:39:06
【问题描述】:

我在一个支持触摸的 Windows 机器上编译 OpenFL。我正在使用 OpenFL 和 Haxe 3 编译到 Windows/C++ 目标。

我无法让触摸事件起作用。这是我添加它们的地方:

private function onAdded(e:Event):Void 
{       
    stage.addEventListener(Event.RESIZE, resize);

    resize(null);

    init(); 

    addEventListener( Event.ENTER_FRAME, onEnterFrame);

    addEventListener( TouchEvent.TOUCH_BEGIN, onTouchBegin );
    stage.addEventListener( TouchEvent.TOUCH_MOVE, onTouchMove );
    stage.addEventListener( TouchEvent.TOUCH_END, onTouchEnd );

}

我的enterFrame() 被调用得很好。没有触摸(或使用鼠标)触发处理程序。这是 Windows 桌面限制吗?一旦我安装了 iOS 和 Android,这会起作用吗?为什么不?这是 NME/OpenFL 错误吗?

【问题讨论】:

  • 另外,MouseEvent 在使用鼠标时工作正常,也不会被触摸误触发。

标签: windows touch haxe openfl nme


【解决方案1】:

在 1.1 更新中,您现在可以在 Windows 上使用鼠标代替触控,直到实现对多点触控的全面支持。适用于 iOS 和 Android 等。

singmajesty on the forum

换一种方式试试,使用 MouseEvent 来处理桌面上的鼠标和触摸输入。

我们刚刚(在本周发布的 OpenFL 1.1 中)迁移到用于 Windows 后端的 SDL2。这实际上支持真正的触摸事件,所以在未来我希望看到对桌面的多点触控支持。就在不久之前,这只是移动设备微笑的事情

因此,如果您不需要单独跟踪单个触摸点,那么今天鼠标事件应该可以为您完成。否则,我们现在的定位是能够在不久的将来微笑对此提供支持

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-29
    • 1970-01-01
    • 2011-02-17
    • 2021-12-28
    • 1970-01-01
    • 2021-07-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多