我需要一種將圖像從容器拖放到另一個的方法。我已經嘗試了幾種不同的方式,但我猜拖放&東西仍然躲過我。無論如何,這是我想要做的,一個容器將包含一些位圖/矢量圖像(這是什麼最好的方式?瓷磚組?或?),然後我想能夠拖動任何圖像到另一個更大面板內的圖像。就像在Photoshop中拖動形狀一樣。將圖像從容器拖放到另一個 - Flex
沒有代碼在這裏,因爲我完全失去了如何去做。我在這裏和那裏發現了一些提示/教程,但沒有哪一個能夠輕鬆理解或適應我的需求。那麼,有什麼幫助?
編輯1:這麼遠至今:
public function beginDrag(mouseEvent:MouseEvent):void
{
var dragInitiator:IUIComponent = mouseEvent.currentTarget as IUIComponent;
var dragSource:DragSource = new DragSource();
dragSource.addData(mouseEvent.currentTarget.source, "items");
var dragProxy:Image = new Image();
dragProxy.source = mouseEvent.currentTarget.source;
dragProxy.setActualSize(mouseEvent.currentTarget.width,mouseEvent.currentTarget.height)
DragManager.doDrag(dragInitiator, dragSource, mouseEvent, dragProxy);
}
public function acceptDrop(dragEvent:DragEvent):void
{
var dropTarget:IUIComponent = dragEvent.currentTarget as IUIComponent;
var dragSource:DragSource = dragEvent.dragSource;
if (dragSource.hasFormat("items"))
{
DragManager.acceptDragDrop(Image(dragEvent.currentTarget));
}
}
public function handleDrop(dragEvent:DragEvent):void
{
var dragInitiator:IUIComponent = dragEvent.dragInitiator;
var dropTarget:IUIComponent = dragEvent.currentTarget as IUIComponent;
var items:String = dragEvent.dragSource.dataForFormat("items") as String;
var img:Image = new Image();
img.x=dragEvent.localX;
img.y=dragEvent.localY;
img.width = 50;
img.height=50;
img.source=items.toString();
var bitmap:Bitmap= Bitmap(img.content);
myImage.addChild(img);
}
好吧,不知道容器是否是合適的術語。但這是我想要的。我想在一個說法中保留一些圖像,拼貼組,然後我想將任何圖像拖放到Panel內的另一個較大的圖像上。你有什麼聯繫,我可以通過你提到的事件? – redGREENblue 2011-05-23 19:42:02