Spriteのドラッグアンドドロップをシミュレートするために、いくつかのactionscriptコードが必要です。そうすることが可能かどうか疑問に思っていましたか?もしそれがどうですか?プログラムでドラッグしてFlexでスプライトをドロップする方法は?
たとえば、次のコード行で実現できるSpriteのクリックをシミュレートするには: AIR Sprite Classについては
sprite.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
Spriteのドラッグアンドドロップをシミュレートするために、いくつかのactionscriptコードが必要です。そうすることが可能かどうか疑問に思っていましたか?もしそれがどうですか?プログラムでドラッグしてFlexでスプライトをドロップする方法は?
たとえば、次のコード行で実現できるSpriteのクリックをシミュレートするには: AIR Sprite Classについては
sprite.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
はこのような何かを次のいずれか:あなたはstartDragメソッドに2つの引数を渡すことができ
mySprite.addEventListener("mouseDown", mouseDownHandler);
stage.addEventListener("mouseUp", mouseUpHandler);
protected function mouseDownHandler (e:MouseEvent):void{
e.target.startDrag();
}
protected function mouseDownHandler (e:MouseEvent):void{
e.target.stopDrag();
}
、最初は、第二には、境界点のためのRectangleオブジェクトで、中央にロックするブール値です。
そして、あなたが代わりにこのような何かを行うことができ、より制御動作のために:
mySprite.addEventListener("mouseDown",
mouseDownHandler);
stage.addEventListener("mouseUp", mouseUpHandler);
protected function mouseDownHandler (e:MouseEvent):void{
stage.addEventListener("mouseMove",
mouseMoveHandler);
}
protected function mouseDownHandler (e:MouseEvent):void{
stage.removeEventListener("mouseMove",
mouseMoveHandler);
}
protected function mouseMovehandler(e:MouseEvent):void{
mySprite.x=mouseX;
mySprite.y=mouseY;
}
(いくつかの小さな構文エラーか何かがあるかもしれないので、コードをテストしていない)
これは5年後のことですが、2番目の 'mouseDownHandler'を' mouseUpHandler'に編集するのを忘れているかもしれません – Vanlalhriata
nativeDragStart、によってnativeDragOver、nativeDragEnter、によってnativeDragExit、nativeDragUpdateを持っています。したがって、これらのイベントをディスパッチできます。
Flexの場合、オブジェクトはUIComponentのインスタンスでなければなりません。
あなたは説明できますこれは何のため?あなたが間違っているように聞こえる。 – zinovii
私はUIをテストするためのテストコードを書いていますので、インジケータ(画像)をインジケータバー上にドラッグする必要があります。 –
私は、SpriteにはstartDrag()メソッドとstopDrag()メソッドがありますが、イベントは送出されないと思っています。少なくとも、SpriteのdragStartイベントとdragCompleteイベントを持っているといいでしょう。 – zinovii