0
我需要制作一个项目可拖动(可拖动?)对不起,如果我的术语不对!我有一个AS3类,它扩展了一个动态图像的movieClip,如何使这个图像可拖动?
我有一个类,我将存储变量,做计算:
package Classes
{
import flash.display.*;
import flash.events.*;
import flash.net.*;
public class PrintItem extends MovieClip
{
public var imageLoader:Loader;
public function PrintItem()
{
}
public function loadImage(url:String):void
{
imageLoader = new Loader();
imageLoader.load(new URLRequest(url));
}
}
}
我创建类的新实例,我通过它的LoadImage一个URL,我把它添加到这样的画布:
var myItem:PrintItem = new PrintItem();
myItem.loadImage("pic.jpg");
this.addChild(myItem.imageLoader);
myItem.imageLoader.x = 50;
myItem.imageLoader.y = 50;
myItem.imageLoader.addEventListener(MouseEvent.MOUSE_DOWN, pickUp);
myItem.imageLoader.addEventListener(MouseEvent.MOUSE_UP, dropIt);
但我在那里卡住了。我需要使这个项目可拖动并写入pickUp和dropIt函数。 event.target.startDrag(假);不起作用(Loader不可拖动)和event.target.parent.startDrag(false);在整个舞台变得拖沓时不起作用!帮帮我!是因为只有加载器被添加到舞台上吗?
你会发现,如果你快速拖动并释放,那么dropIt不会因为你已经发布imageLoader而被解雇。为了解决这个问题,dropIt的听众应该在舞台级听。它应该在你的拾取功能中做到这一点。不要忘记从dropIt功能中删除它。 – Allan 2010-08-12 00:24:20