Comunidad de diseño web y desarrollo en internet online

dibujar en flex

Citar            
MensajeEscrito el 20 Jun 2010 11:00 pm
Buenas tardes a todos.
Estoy iniciándome en Flex y me he encontrado con ciertos inconvenientes, me encuentro dibujando arboles y ya he podido unir los nodos y las aristas pero tengo 2 problemas con las aristas.
1. - No he encontrado la forma de colocarle un tooltip a la arista que me diga “Esto es una arista”.
2.- tampoco he podido lograr que al darle click a la arista salga un Alert con el id de la arista
Las aristas las estoy pintando así

Código ActionScript :

import flash.display.Graphics;
   import flash.filters.DropShadowFilter;
   
   import mx.controls.Image;
   import mx.core.UIComponent;
   import mx.events.FlexEvent;

   public class GraphDependency extends Image
   {
      private var gr:Graphics;
      private var depend:Array;
      private var lineC:uint;
      
      public function GraphDependency(lineColor:uint=0x000000, dependencys:Array=null){
         super();
         gr=this.graphics;
         depend=new Array
         depend=dependencys;
         lineC=lineColor;
         this.addEventListener(FlexEvent.CREATION_COMPLETE, designDependency,false,0,true);
      }
      
      private function designDependency(evt:FlexEvent):void {
         var shadow:DropShadowFilter = new DropShadowFilter;
         shadow.distance=5;
         shadow.alpha=.5;
         shadow.angle=90;
         this.filters=[shadow]
         update();   
      }
      
      public function update():void {
         if(depend.length>0)
         {
         gr.clear();
         var tempTo:UIComponent;
         var tempFrom:UIComponent=depend[0] as UIComponent;
         
         gr.lineStyle(1,lineC);
         for(var x:uint=1; x<depend.length; x++) {
               gr.moveTo(tempFrom.x+(tempFrom.width/2)-5,tempFrom.y+(tempFrom.height/2)-5);
               tempTo=depend[x] as UIComponent;
               gr.lineTo(tempTo.x+2,tempTo.y+2);      
          }
         }      
      }
      
      
   }

Muchas gracias por la ayuda que me puedan dar

Por XgabytaX

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 21 Jun 2010 03:03 pm
Hola,
tal y como lo estás haciendo, sólo tienes un control Image donde vas dibujando todas las aristas, y por lo tanto sólo podrás asignar un tooltip y un evento click para ese control.
Para que cada arista tenga su propio tooltip, su popiedad id, y su propio evento click, tienes que crear un control Image para cada arista.

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 21 Jun 2010 04:05 pm
Muchas gracias :)

Por XgabytaX

2 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.