Tout fonctionne, mais moi je voudrais faire pareil avec des images dynamique.
Voila mon code
CODE
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" viewSourceURL="src/DragAndDropDragInitiatorEvents/index.html" width="900" height="900" initialize="create();">
<mx:Script>
<![CDATA[
import mx.managers.DragManager;
import mx.core.DragSource;
import mx.events.VideoEvent;
import mx.controls.Image;
import mx.effects.IEffectInstance;
import mx.controls.*;
import mx.controls.Alert;
import mx.effects.easing.*;
[Embed("media/ccm.jpg")]
[Bindable]
public var OneCent:Class;
private function create():void{
contents.send();
}
// Affiche les thumbnails
private function handleHttpRequest(event:Event):void{
for( var i:uint = 0; i < contents.lastResult.content.length(); ++i ){
var canvas:Canvas = new Canvas();
canvas.height = 80;
canvas.width = 60;
canvas.setStyle( "backgroundColor", 0x8888FF );
var image:Image = new Image();
image.height = 80-2;
image.width = 60-2;
image.source = "media/"+contents.lastResult.content[i].thumbnail;
image.x = 1;
image.y = 1;
image.alpha = 1.0;
image.scaleContent = true;
image.maintainAspectRatio = false;
image.addEventListener(MouseEvent.MOUSE_MOVE, dragIt);
canvas.addChild( image );
details.addChild( canvas );
}
}
private function dragIt(event:MouseEvent):void {
var dragInitiator:Image = event.currentTarget as Image;
var dragSource:DragSource = new DragSource();
dragSource.addData(1, 'value');
var dragProxy:Image = new Image();
dragProxy.source = event.currentTarget.source;
DragManager.doDrag(dragInitiator, dragSource, event, dragProxy);
}
]]>
</mx:Script>
<mx:HTTPService id="contents" url="./resources/contents.xml" result="handleHttpRequest(event)" resultFormat="e4x" />
<mx:Canvas>
<mx:VBox id="details" x="0" y="0"></mx:VBox>
</mx:Canvas>
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" viewSourceURL="src/DragAndDropDragInitiatorEvents/index.html" width="900" height="900" initialize="create();">
<mx:Script>
<![CDATA[
import mx.managers.DragManager;
import mx.core.DragSource;
import mx.events.VideoEvent;
import mx.controls.Image;
import mx.effects.IEffectInstance;
import mx.controls.*;
import mx.controls.Alert;
import mx.effects.easing.*;
[Embed("media/ccm.jpg")]
[Bindable]
public var OneCent:Class;
private function create():void{
contents.send();
}
// Affiche les thumbnails
private function handleHttpRequest(event:Event):void{
for( var i:uint = 0; i < contents.lastResult.content.length(); ++i ){
var canvas:Canvas = new Canvas();
canvas.height = 80;
canvas.width = 60;
canvas.setStyle( "backgroundColor", 0x8888FF );
var image:Image = new Image();
image.height = 80-2;
image.width = 60-2;
image.source = "media/"+contents.lastResult.content[i].thumbnail;
image.x = 1;
image.y = 1;
image.alpha = 1.0;
image.scaleContent = true;
image.maintainAspectRatio = false;
image.addEventListener(MouseEvent.MOUSE_MOVE, dragIt);
canvas.addChild( image );
details.addChild( canvas );
}
}
private function dragIt(event:MouseEvent):void {
var dragInitiator:Image = event.currentTarget as Image;
var dragSource:DragSource = new DragSource();
dragSource.addData(1, 'value');
var dragProxy:Image = new Image();
dragProxy.source = event.currentTarget.source;
DragManager.doDrag(dragInitiator, dragSource, event, dragProxy);
}
]]>
</mx:Script>
<mx:HTTPService id="contents" url="./resources/contents.xml" result="handleHttpRequest(event)" resultFormat="e4x" />
<mx:Canvas>
<mx:VBox id="details" x="0" y="0"></mx:VBox>
</mx:Canvas>
</mx:Application>
Dans ce code j affiche bien mes images, je leur affect la methode dragIt, mais lorsque je déplace mes image, je n'ai pas une copie de l image qui suit ma souris, car il faudrait que je créer pour chaque image une variable de ce type mais avec les valeur en dynamique
CODE
[Embed("monImage")]
[Bindable]
public var OneCent:Class;
[Bindable]
public var OneCent:Class;
Mais comme faire ??
Merci
