Oi, Anderson...
Olha só: se me lembro bem, falaste que isso é pro teu TCC... Se é, acho que 
deves arrumar tempo pra estudar... Sei lá, o teu nome tá ali, entende...

De qualquer forma, porque eu te mandei olhar aquela lib que, talvez seja 
complicada demais por enquanto, achei que nao ia custar muito apontar para 
outra solucao.

Veja que eu quis dizer apontar: nao e a solucao pronta.
Nao tem bugs, mas tem coisas que tem que melhorar.
Eu, como o Mario e a maioria aqui nao pode ajudar com coisas tao especificas, 
que exigem um conhecimento grande do problema, dos casos e do codigo... Isso e 
pra te dizer que, eu, pelo menos, dificilmente vou poder te dar uma mao com 
codigo.

Ja se as duvidas forem mais simples, diretas e objetivas, tudo bem... Dai vais 
ver que um monte de gente vai ajudar...
Segue:

<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml"; 
    layout="absolute"
    creationComplete="initApp()">
    
    <mx:Script>
        <![CDATA[
            import mx.core.UIComponent;
            
            private var c1:UIComponent;
            private var c2:UIComponent;
            private var line:UIComponent=new UIComponent;
            private var dict:Dictionary=new Dictionary();
            
            private function drawCircle(cor:Number):UIComponent{
                var ui:UIComponent=new UIComponent;
                ui.graphics.beginFill(cor);
                ui.graphics.drawCircle(0,30,30);
                ui.graphics.endFill();
                
                return ui;
            }
            
            private function initApp():void{
                addChild(line);
                
                c1=UIComponent(addChild(drawCircle(0x007733)));
                c1.x=30;
                c1.y=30;
                c1.addEventListener(MouseEvent.MOUSE_MOVE, dragMe);
                
                
                c2=UIComponent(addChild(drawCircle(0xAAFF99)));
                c2.x=200;
                c2.y=200;
                c2.addEventListener(MouseEvent.MOUSE_MOVE, dragMe);
                
                dict[c1]=c2;
                dict[c2]=c1;
            }
            
            private function drawLine(xTo:Number, xFrom:Number, 
owner:UIComponent):void{
                owner.graphics.clear();
                owner.graphics.lineStyle(2,0);
                owner.graphics.moveTo(xFrom, 50)
                owner.graphics.lineTo(xTo, 50);
            }
            
            private function dragMe(evt:MouseEvent):void{
                var target:UIComponent=UIComponent(evt.currentTarget);
                target.startDrag();
                var xFrom:Number=target.x;
                var xTo:Number=UIComponent(dict[target]).x;
                drawLine(xTo, xFrom, line);
            }
        ]]>
    </mx:Script>
</mx:Application>


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





Date: Tue, 11 Nov 2008 15:27:55 -0300
From: [EMAIL PROTECTED]
To: [email protected]
Subject: [flexdev] Conexões de imagens
CC: [EMAIL PROTECTED]

Ae pessoal!! To com um probleminha aqui.. ó só... to com diversas imagens para 
poder ligar em um canvas.. essas imagens são os "nós". E eu terei que fazer 
conexões dessas imagens.. Eu escolho quais imagens eu quero ligar (img1, img2) 
... isso dinamicamente... depois escolho outras duas e faço a mesma coisa... aí 
tava aqui conversando com o Mário mas ele tá meio ocupado agora não tá podendo 
me responder... então vou enviar minha dúvida pra vocês já que tenho certa 
urgência em resolver isso... havia pesquisado sobre como fazer isso.. e me 
falaram sobre a API as3ds.. só que não estou com um "tempo certo" pra poder me 
dedicar a isso, pretendo fazer depois que acabar minha agonia, digamos que para 
um upgrade do meu projeto.. dentre as pesquisas encontrei a classe Graphics eu 
conseguia fazer isso.. então falei com Mário ele deu uns toques .. só que 
empacamos na seguinte questão: digamos que a img1 esteja em cima no ponto (10, 
10) e a img2 (100, 100) quando mexo a img2 a conexão acompanha... mas quando 
mexo na img1 a linha vai junto e não diminui ou aumenta dinamicamente. Outra 
coisa que reparei é que se eu tento trocar de lugar a img1 com a img2 dá merda, 
pois, a linha nao sobe!!
Meu código tá assim...

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

                Image(event.dragInitiator).y = 
Canvas(event.currentTarget).mouseY;
                desenhaLinha(myimg1, myimg2);
}

private function dragEnterHandler(event:DragEvent):void {
                if (event.dragSource.hasFormat("img"))

                {
                    clearAllGraphics(Image(event.dragInitiator));
                    DragManager.acceptDragDrop(Canvas(event.currentTarget));
                }
}

private function clearAllGraphics(obj : Image):void{

                obj.graphics.clear();
}

private function desenhaLinha(source: Image, target: Image):void{
                clearAllGraphics(source);
                source.graphics.lineStyle(1);
                source.graphics.lineTo(target.x, target.y);

}

<mx:Button x="80" y="20" label="Adicionar link" click="desenhaLinha(myimg1, 
myimg2)"/>

Ah! depois que eu conseguir fazer funcionar sem bug nenhum.. vou ter que fazer 
a comunicação disso. Quando eu adicionar um link mostra no outro browser... mas 
acho que isso seja mais fácil!!
Abraço e agradeço desde já a todos que puderem me ajudar!





_________________________________________________________________
Discover the new Windows Vista
http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
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