これを使用して、AS3 でキーボード イベントを発生させます。
dispatchEvent(new KeyboardEvent(KeyboardEvent.KEY_UP,true,false,_charcode,_keycode));
しかし、AS2 で同じことを達成する方法を理解できないようです。それは可能ですか? 外部 SWF に対してキー イベントを発生させる必要がありますが、SWF のソースがありません。
これを使用して、AS3 でキーボード イベントを発生させます。
dispatchEvent(new KeyboardEvent(KeyboardEvent.KEY_UP,true,false,_charcode,_keycode));
しかし、AS2 で同じことを達成する方法を理解できないようです。それは可能ですか? 外部 SWF に対してキー イベントを発生させる必要がありますが、SWF のソースがありません。
AS2 でのイベントのディスパッチは、AS3 とは多少異なります。AS3 のほとんどのクラスは既に EventDispatcher クラスを拡張していますが、AS2 ではそうではありません。
AS2 に関しては、EventDispatcher クラスを直接拡張できない場合、作成するクラス内にイベント ディスパッチャ オブジェクトを作成することを選択する人もいます。
public class Magic extends MovieClip{
public var _dispatcher:EventDispatcher;
....
....
どのイベントでも、そのイベントは最終的に文字列に変換されるため、適切な文字があれば、定数表現を使用せずに任意のイベントをディスパッチできます。
...
...
...
_dispatcher.dispatchEvent(new KeyboardEvent(KeyboardEvent.UP));
// is the same as the following:
_dispatcher.dispatchEvent(new KeyboardEvent("keyUp"));
したがって、あなたがやろうとしていることは可能かもしれませんが、それは元のコーダーがコードをどのようにモデル化したかに大きく依存します. コードの構造を特定するには、お気に入りの逆コンパイラを使用して swf を逆コンパイルし、「リスニング」が行われている場所を突き止めます。次に、必要に応じて、「ディスパッチ」オブジェクトをターゲットにして、ディスパッチを模倣できます。
(この外部 SWF を読み込んでいると思います)。swf をロードし、ディスパッチを行うムービークリップ/オブジェクトをターゲットにします。
var _dispObject = _loadedSwf.mc.mc.mc.dispatchingObject;
必要に応じて発送を行います。
_dispObject.dispatchEvent(new KeyboardEvent("keyUp"));