0

私はタッチ対応の 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 のバグですか?

4

1 に答える 1

0

マルチタッチの完全サポートが実装されるまでは、1.1 アップデートで Windows のタッチの代わりにマウスを使用できます。iOS や Android などで問題なく動作します。

フォーラムのsingmajesty

別の方法で試してみてください。MouseEvent を使用して、デスクトップでのマウス入力とタッチ入力の両方を処理します。

私たちは、(今週リリースされた OpenFL 1.1 で) Windows のバックエンドを SDL2 に移行したばかりです。これは実際にリアル タッチ イベントをサポートしているため、将来的にはデスクトップでのマルチタッチ サポートが見られると期待しています。これが笑顔のモバイルデバイスだけのものだったのは、それほど昔のことではありませんでした

したがって、個々のタッチ ポイントを個別に追跡する必要がない場合は、マウス イベントを使用する必要があります。それ以外の場合は、そう遠くない将来にこれに対するサポートを配線できるようになりました。

于 2013-11-07T00:05:12.603 に答える