Olha, não entendi direito...
Tu quer adicionar a imagem no canvas??
Porque tu tá adicionando no (eu acho) Application.
Coloca v1.addChild(novo);

Agora, tu quer movimentar uma imagem que está fora do canvas para dentro dele? 
E quando ela ficar dentro dele tu pode arrastar dentro da área do Canvas??
Testa pra ver se ele está dentro do Canvas e, se não estiver, coloca ela ali 
dentro...

private function dragDropHandler(event:DragEvent):void {
                var 
container:DisplayObjectContainer=DisplayObjectContainer(event.currentTarget);
                var img:DisplayObject=DisplayObject(event.dragInitiator);
                //Testa se o Image está dentro do Canvas ou não
                if(img.parent!=container){
                    container.addChild(img);
                }
                img.x =container.mouseX;
                img.y = container.mouseY; 
            }



 
Gabriela Trindade Perry - http://www.gabriela.trindade.nom.br



Date: Mon, 3 Nov 2008 11:41:21 -0300
From: [EMAIL PROTECTED]
To: flexdev@googlegroups.com
Subject: [flexdev] DragDrop dinãmico

Ae pessoal!! To com a seguinte dúvida... to querendo adicionar imagens em um 
Canvas para poder movimentá-la. Agora é o seguinte!
Eu consigo adicionar a imagem.. só que não dentro do canvas.


meu código de adicionar uma nova imagem é esse:
            
private function adicionarImage():void{
                var novo:Image = new Image;
                var efeito:Effect = new Blur;


                novo.x = 50;
                novo.y = 50;
                novo.id = "telefone";
                novo.source = "../img/arma/revolver.png";

                efeito.target = novo;

                this.addChild(novo);
                efeito.play();
}

CÓDIGO DE MOVIMENTAR É DAQUI PRA BAIXO:

private function mouseOverHandler(event:MouseEvent):void {                


                var dragInitiator:Image=Image(event.currentTarget);
                var ds:DragSource = new DragSource();
                ds.addData(dragInitiator, "img");               

                // The drag manager uses the Image control 


                // as the drag proxy and sets the alpha to 1.0 (opaque),
                // so it appears to be dragged across the Canvas.
                var imageProxy:Image = new Image();
                imageProxy.source = globeImage;


                imageProxy.height=15;
                imageProxy.width=15;                
                DragManager.doDrag(dragInitiator, ds, event, 
                    imageProxy, -15, -15, 1.00);
}



private function dragEnterHandler(event:DragEvent):void {
                if (event.dragSource.hasFormat("img")){
                    DragManager.acceptDragDrop(Canvas(event.currentTarget));
                }


}

private function dragDropHandler(event:DragEvent):void {
                Entidade(event.dragInitiator).x = 
Canvas(event.currentTarget).mouseX;
                Entidade(event.dragInitiator).y = 
Canvas(event.currentTarget).mouseY;                


}
Aí to sem saber como adicionar no meu canvas:
<mx:Canvas id="v1" width="500" height="500" borderStyle="solid" 


        backgroundColor="#DDDDDD" dragEnter="dragEnterHandler(event);" 
dragDrop="dragDropHandler(event);">
        <!-- The image is the drag initiator. -->
        <mx:Image id="myimg" 


            source="@Embed(source='../img/arma/revolver.png')" 
            mouseMove="mouseOverHandler(event);" /> 
</mx:Canvas>

Já  tentei um monte de coisa e nada funcionou...

Agradeço a ajuda de vocês ae!!








_________________________________________________________________
News, entertainment and everything you care about at Live.com. Get it now!
http://www.live.com/getstarted.aspx
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a