elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Dibujar un árbol en Java sin usar JTree
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 2 [3] Ir Abajo Respuesta Imprimir
Autor Tema: Dibujar un árbol en Java sin usar JTree  (Leído 28,920 veces)
efx

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Dibujar un árbol en Java sin usar JTree
« Respuesta #20 en: 11 Diciembre 2009, 23:23 pm »

pues yo entregue un proyecto similar...solo que lo deje a medias
por que los nodos se me enciman...pero los programo en un  Applet...
habia creado un tema para pedir ayuda de como dibujarlo pero al final encontre esta solucion... :rolleyes:

Código
  1. /*Metodo recursivo que dibuja el arbol empezando de la raiz hasta la ultima hoja*/
  2. public void dibujaNodo(Graphics g,int x,int y,NodoA raiz)
  3. {
  4. NodoA aux=raiz;
  5.  
  6. //si la raiz no esta vacia--tiene al menos un elemento
  7. if(aux!=null)
  8. {
  9. g.setColor(new Color(255,228,196));
  10. g.fillOval(x,y,25,25);
  11. g.drawOval(x,y,25,25);//solo dibujamos el nodo raiz en X Y
  12.  
  13. g.setColor(new Color(165,42,42));
  14. g.drawString(aux.getinfo()+"",x+9,y+16);//dibujamos la info de raiz en medio del circulo
  15.  
  16. /*si hay algo en la izquierda*/
  17. if(aux.getizq()!=null)
  18. {
  19. //Imprimir linea de x,y a x-TAM, y+TAM
  20.  
  21. g.drawLine(x+5,y+22,x-35,y+50);
  22. /*se llama el metodo pero ahora con nuevas coordenadas y otro nodo*/
  23. dibujaNodo(g,x-50,y+50,aux.getizq());
  24.  
  25. }
  26.  
  27. /*si hay algo en la derecha*/
  28. if(aux.getder()!=null)
  29. {
  30. //Imprimir linea de x,y a x+TAM, y+TAM
  31. g.drawLine(x+20,y+22,x+55,y+50);
  32. /*se llama el metodo pero ahora con nuevas coordenadas y otro nodo*/
  33. dibujaNodo(g,x+50,y+50,aux.getder());
  34.  
  35. }
  36. }
  37.  
  38. }

ya solo en el metodo paint

Código
  1. public void paint(Graphics g) {
  2.  
  3. g.drawImage(titulo,120,0,242,93,this);
  4. /*Solo acomodamos los componentes*/
  5. txtDato.setBounds(420,30,30,20);
  6. insertar.setBounds(440,60,60,20);
  7. eliminar.setBounds(370,60,60,20);
  8.  
  9. rEn.setBounds(20,95,120,20);
  10. rPos.setBounds(160,95,120,20);
  11. rPre.setBounds(310,95,120,20);
  12.  
  13. h.setBounds(168,125,100,20);
  14.  
  15. dibujaNodo(g,200,150,A.getraiz());
  16.  
  17.  
  18. }

bueno pues salu2 a todos  ;D


En línea

kuruchus

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Dibujar un árbol en Java sin usar JTree
« Respuesta #21 en: 6 Enero 2010, 14:32 pm »

Gracias por la ayuda. Terminé el proyecto y cuando se acabe el curso subiré el código aquí.
Un saludo


En línea

Páginas: 1 2 [3] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda implementar arbol trie en java
Java
Cooltan 1 6,576 Último mensaje 3 Abril 2011, 05:20 am
por Tryptophan
Duda:Arbol genealogico en java
Java
Mioshi 4 9,834 Último mensaje 30 Noviembre 2011, 20:08 pm
por Mioshi
JTree en Java
Java
neotonygold 1 4,134 Último mensaje 27 Febrero 2012, 14:29 pm
por Proteus1989
Dibujar Arbol
Programación C/C++
SantyXDz 3 3,429 Último mensaje 5 Noviembre 2013, 08:03 am
por edr89
Java Dibujar Engrane
Java
Darkshadic 1 2,494 Último mensaje 21 Mayo 2017, 10:15 am
por 3n31ch
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines