私はダブルクリックを追加しようと、今朝、この問題を抱えていました私のゲームに。 これは私が見つけたものです。
あなたはこのようにダブルクリックを有効なきゃまず第一に:
panel.addEventListener(MouseEvent.DOUBLE_CLICK,showEditPopup);
ます。また、このように、時にダブルクリック二回発生するクリックを防止するために、同じ機能に焦がすクリックを追加することができます。
panel.addEventListener(MouseEvent.CLICK,showEditPopup);
そしてこの時点で1が、両方と相互作用する、関数のようになります。
function showEditPopup(e:MouseEvent) {
if (e.type == "click") {
//single click
} else if (e.type == "doubleClick") {
//double click
}
}
2つの問題が出てきました。まず、リスナーの前に、このようなダブルクリックを有効にお奨め:
panel.enableDoubleClick = true;
その後悪化した表示オブジェクトがマウスイベントを持っている別の表示オブジェクトにバインドされている場合、あなたはその子供たちのために、これらのイベントを無効にする必要がありダブルクリック作業。このように:
panel.mouseChildren = false;
これは私がやっていたものなので、それは悪いことでした。 スキルのあるカードを作成しました。スキルはツールチップを表示するためにmouseevent.move_overを持っていました。しかし、その後、カードをダブルクリックして置く/デッキから取り出したいと思っていました。しかし、そのムービークリップに付いているスキルには、動きがなかったので動作しませんでした。だから私はそれらを無効にし、それを行うための別の方法を見つけなければならなかった。そのマウスチャイルドでツールヒントが表示されず、falseに設定されていたため、私はこれらのイベントを回避する選択肢がありませんでした。
これは、タイマーソリューションが本当に良いアイデアのように思える理由です。ダブルクリックの待機時間は、1秒とすることができます。人々には影響しませんし、最も遅い人にも適合します;)
メモ:MouseEvent.CLICKもまた2回発砲します。 – WORMSS
ありがとうございましたChapMic Ya that。 – veer7
この回答を受け入れることができますか?ありがとう – ChapMic