5

私はas3でゲームキオスクアプリを設計しました。Windows7のSonyvaiol pc(hpのtouchsmartsなど)で使用しています。アプリはマルチタッチジェスチャ(シングルタッチクリックとドラッグのみ)を必要としないため、使用しています。マウスイベント

画面へのシングルタッチ(移動なし)がマウスを起動しないことを除いて、すべてが正常です(マウスクリックおよび移動イベントを含む)。指を少し動かした後にのみ発射されます

アプリの外、デスクトップでは、小さなWindows 7カーソルが指を置いた場所にすぐにジャンプします。これは、この問題がハードウェアやWindowsの問題ではなく、フラッシュアプ​​リが「変換された」タッチを内部でどのように受け取るかを意味します。 osからのto-mouseイベント。

たとえば、Windowsソリティアゲームでは、画面にタッチするだけで、タッチしたカードがすぐに強調表示されます。私のアプリでは、ボタンに触れて指を少し動かすと、ボタンが下の状態に変わります(クリックイベント(下と上)は正常にトリガーされます)

MOUSE_DOWNイベントは、新しいtoucheventクラスのTOUCH_BEGINとまったく同じようにトリガーされるべきではありませんか?

何か案は?

4

3 に答える 3

3

同じ問題が発生しました。

Multitouch.inputModeプロパティをMultitouchInputMode.TOUCH_POINT(デフォルト値はappear に設定MultitouchInputMode.GESTURE)するとMOUSE_DOWN、ユーザーがタッチして移動したり、タッチして離したりしたときではなく、画面にタッチしたときにイベントがディスパッチされます。

于 2012-01-24T17:19:27.710 に答える
0

新しいタッチスクリーンを購入したところ、再び問題が発生しました。

したがって、解決策は、コードの任意の場所に記述してに設定Multitouch.inputModeすることです。MultitouchInputMode.TOUCH_POINT

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

Flash Editor (少なくとも CC 2015) でテストする場合は機能しないことに注意してください。そのため、たとえば、Flash Player で個別に開く必要があります。Ctrl+Enter .SWF

編集:しかし、デバッグモードで動作します! ( Ctrl+Shift+Enter)

于 2016-12-18T12:26:00.397 に答える
0

触れたときにカーソルが移動する場合、OSはこれをMOUSE_DOWNではなくMOUSE_MOVEとして登録しているだけだと思います。これはタッチスクリーンであるため、ユーザーが実際に指をドラッグして実際の MOUSE_MOVE イベントを作成しているわけではないため、MOUSE_MOVE はクリックと見なすことができます。

まあ、彼らが実際に何かのために指をドラッグしている場合は、MOUSE_MOVE が突然カーソルをボタンの上に置くと想定できます (以前の MOUSE_MOVE、つまりドラッグなしで)、それは MOUSE_DOWN です。

于 2010-08-16T16:50:32.263 に答える