0

現在、各ローダーはスプライトの子です -- sprite.addChild(loader);

次に、スプ​​ライトを myBorder movieClip にある movieClip ボックスに追加します -- mainMovie.myBorder.box.addChild(sprite);

次に、次を使用してスプライトをドラッグできます --

mainMovie.addEventListener(MouseEvent.MOUSE_DOWN,pickUp); mainMovie.addEventListener(MouseEvent.MOUSE_UP,dropIt);

function pickUp(event:MouseEvent):void { sprite.startDrag(); }

 function dropIt(event:MouseEvent):void
 {
sprite.stopDrag();
 }

各スプライトを別々にしたいのですが、「for while」ループをどこで使用すればよいかわかりません。最大で 5 つの画像をアップロードできるようにしたいだけです。

ここで誰でも私を助けることができますか?ありがとう、アネット B.

4

2 に答える 2

0

「スプライト」のドラッグを聞いてはいけません。ドラッグ可能にする子ごとに、個別のリスナーとハンドラーが必要です。したがって、代わりに「スプライト」の子を聞く必要があります。

sprite.loader.addEventListener(MouseEvent.MOUSE_DOWN,pickUp); 
sprite.loader.addEventListener(MouseEvent.MOUSE_UP,dropIt);

また、「スプライト」コンテナではなく、子をドラッグする必要があります。

 function dropIt(event:MouseEvent):void
 {
     sprite.loader.stopDrag();
 }

for whileループで何を達成しようとしているのかわかりませんが、ローダー変数の束を作成する基本的なforループの例を次に示します。

var loaderArray:Array = [];
for(var increment = 0; increment < numberOfUploads; increment++) {
    loaderArray[increment]:URLLoader = new URLLoader();
}

お役に立てば幸いです。あなたのコードをもっと見ることができればもっと良いでしょう。

于 2009-08-26T22:57:40.977 に答える
0

単純なforループで実行する必要があります

だから代わりに

mainMovie.addEventListener(MouseEvent.MOUSE_DOWN,pickUp); mainMovie.addEventListener(MouseEvent.MOUSE_UP,dropIt);

ボックス内に他のクリップがないと仮定すると、ローダーを保持するスプライトがあり、スプライトがそこに追加されていることを確認する必要があります。おそらくforループを使用してスプライトとリスナーを追加する必要がありますが、十分な情報がないため、正確にアドバイスすることはできません。

for(var i:int = 0 ; i < 5 ; i++){
    mainMovie.myBorder.box.getChildAt(i).addEventListener(MouseEvent.MOUSE_DOWN,pickUp);;
}
stage.addEventListener(MouseEvent.MOUSE_UP,dropIt);

わかりました、説明:

forループは、シンプルでありながら強力な言語要素です。ドキュメントを読み、サンプルコードをコピーして新しいflaに貼り付け、微調整してコツをつかむことをお勧めします。見た目ほど難しくはありません。

as3には問題があるため、ステージにMOUSE_UPハンドラーを追加しています。as2リリースの外で動作します。

于 2009-08-26T22:59:12.957 に答える