ドラッグ アンド ドロップ機能とオブジェクトの選択に問題があります。
簡単なフラッシュアレンジャーを作成します(ステージにテーブルアイコンを追加します-部屋)。テーブルアイコンの新しいインスタンスを作成するボタンがあり、ステージ上でドラッグアンドドロップできます。
問題は、最後に追加したアイコンのみをドラッグ アンド ドロップできることです。新しいインスタンス od アイコンを追加すると、以前に作成されたアイコンを (ドラッグ アンド ドロップ) 取得できません:/
ここに私のコード:メインクラス
import flash.events.MouseEvent;
import flash.events.Event;
import com.adobe.images.JPGEncoder;
import flash.geom.Point;
btn_middleTable.addEventListener(MouseEvent.CLICK, f_middleIco);
btn_bigTable.addEventListener(MouseEvent.CLICK, f_bigIco);
btnSave.addEventListener(MouseEvent.CLICK, f_save);
function f_middleIco(event:MouseEvent):void
{
var middle:MiddleIco = new MiddleIco();
middle.x = 20;
middle.y = 20;
stage.addChild(middle);
trace("created");
}
function f_bigIco(event:MouseEvent):void
{
var big:BigIco = new BigIco();
big.x = 20;
big.y = 20;
stage.addChild(big);
trace("created");
}
function f_save(event:MouseEvent)
{
var jpgEncoder:JPGEncoder;
jpgEncoder = new JPGEncoder(90);
var bitmapData:BitmapData = new BitmapData(stage.width, stage.height);
bitmapData.draw(stage, new Matrix());
var img = jpgEncoder.encode(bitmapData);
var file:FileReference = new FileReference();
file.save(img, "filename.png");
}
アイコン インスタンス パッケージ:
package {
import flash.display.MovieClip;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.geom.Point;
public class BigIco extends MovieClip {
public var active:Boolean;
public function BigIco() {
// constructor code
this.addEventListener(Event.ENTER_FRAME, f_move);
this.addEventListener(MouseEvent.MOUSE_DOWN,downf);
this.addEventListener(MouseEvent.MOUSE_UP,upf);
}
public function f_move(e:Event)
{
if(active==true)
{
startDrag();
}
else if(active==false)
{
stopDrag();
}
}
public function downf(e:MouseEvent)
{
active = true;
}
public function upf(e:MouseEvent)
{
active = false;
}
}
}
実際にマウス カーソル上にあるすべてのアイコン (インスタンス) を選択できるようにするにはどうすればよいですか?