単純なドラッグアンドドロップのFlashプログラムを作成しようとしています。ここで、ユーザーはツリー上にxmasの装飾をドラッグできます。一度装飾物をドラッグできるのではなく、装飾物をクリックするたびに、装飾物がクリックされるステージに同じクラスの新しい装飾物を追加するような機能が必要です。現在私はこの作業をしていますが、問題が1つあります。それは動的ではありません。 「ドラッグ」機能を見ると、追加されるデフォルトの装飾としてクラス「シンボル31」を選択しました。代わりに、私はActionScriptが、クリックされた装飾のクラスを読み込み、毎回 "Symbol31"ではなくそのクラスを追加するようにします。actionscript 3.0を使用して、クリックされたシンボルのクラスを検出します。
以下のコードをご覧ください。
おかげ
public class DragDrop extends MovieClip
{
private var originalX:Number;
private var originalY:Number;
public function DragDrop()
{
originalX = this.x;
originalY = this.y;
this.addEventListener(MouseEvent.MOUSE_DOWN, drag);
}
private function drag(event:MouseEvent):void
{
if(event.target.x>Number(600))
{
var newOrnament:Symbol31 = new Symbol31();
newOrnament.x=originalX;
newOrnament.y=originalY;
this.parent.addChild(newOrnament);
newOrnament.startDrag();
newOrnament.addEventListener(MouseEvent.MOUSE_UP, drop);
}else{
this.startDrag();
this.parent.addChild(this);
this.addEventListener(MouseEvent.MOUSE_UP, drop);
}
}
これは素晴らしいです!ありがとうございました –