Foros del Web » Programación para mayores de 30 ;) » Java »

ayuda sobre JTree

Estas en el tema de ayuda sobre JTree en el foro de Java en Foros del Web. Saludos, mi nombre es Javier, soy estudiante y estoy iniciando mi programacion con Java. El problema que tengo es el siguiente: Sucede que quiero cargar ...
  #1 (permalink)  
Antiguo 04/10/2004, 22:01
 
Fecha de Ingreso: abril-2004
Ubicación: Morelos, México
Mensajes: 124
Antigüedad: 20 años
Puntos: 0
Pregunta ayuda sobre JTree

Saludos, mi nombre es Javier, soy estudiante y estoy iniciando mi programacion con Java.

El problema que tengo es el siguiente:
Sucede que quiero cargar los datos almacenados en una tabla de una base de datos a un componente JTree. La tabla tiene un numero concecutivo:
1, 2, 3, 4, 5, ... etc., que identifica a los registros, su estructura es similar a la de un arbol.

El caso es que cuando manipulo el insertInto(hijo, padre, index) para insertar nodos al Jtree, index se maneja de 0 a N para cada nodo padre.
por ejemplo:
si tengo 3 nodos padre: con los ids: 1, 2, 6.
Y cada nodo padre tiene 5 nodos hijos.
Para cada nodo padre el conjunto de hijos iniciara desde 0 a 4 y volvera a repetirce para todos y cada uno de los conjuntos de nodos.

Yo quiero si se puede incorporar para cada nodo sea padre o hijo un id unico para que en momentos determinados pueda identificar la estructura del arbol de forma rapida y transparente.

AYUDENME.......porfavor.......
Se que aqui hay muchos expertos y master para este tipo de problemitas.
Saludos........
  #2 (permalink)  
Antiguo 07/10/2004, 22:28
 
Fecha de Ingreso: abril-2004
Ubicación: Morelos, México
Mensajes: 124
Antigüedad: 20 años
Puntos: 0
Ya lo resolvi, gracias.....
  #3 (permalink)  
Antiguo 08/10/2004, 13:39
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Creo qeu seria bueno que si resolviste tu duda pudioeras poner aqui como lo hiciste, pues si nadie te contesto debe ser que nadie sabia por aqui esa respuesta...

Si haces esto, ayudas a que todos vamos aumentando nustras capacidades y le resuleve la duda a otros que posiblemente tengan la misma.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #4 (permalink)  
Antiguo 13/10/2004, 15:48
 
Fecha de Ingreso: octubre-2004
Mensajes: 24
Antigüedad: 19 años, 6 meses
Puntos: 0
Pregunta Necesito que me ayudes

Hola, quisiera que me des una mano con mi trabajo, tengo que cargar un arbol a partir de una base de datos, y quisiera saber como tu resolviste el problema.

Gracias
  #5 (permalink)  
Antiguo 13/10/2004, 23:40
 
Fecha de Ingreso: abril-2004
Ubicación: Morelos, México
Mensajes: 124
Antigüedad: 20 años
Puntos: 0
Una disculpa por no contestar y poner el como resolvi el problema, lo q sucede es q aun sigo relazando pruebas.

En J2EE Tutorial, se tienen diferentes formas de como traban los APIs, en especial APIS de Java para xml.

Si tu aplicacion requiere del uso de XML entonces en necesario estudiar este tutorial, ahora bien mi aplicacion contendra el uso de Java para generar archivos XML especificos de una base de datos, dichos XML seran cargados a un DOM (y accedidos en un JTree) o al propio analizador de eventos SAX.

Esta sera una fase, la segunda es:
En la solucion de mi problema anterior lo pude realizar mediante la combiancion o el vinculo de una clase con un JTree.

De esta manera no me tengo que preocupar en como o que datos como parametro debe tener el JTree para identificar cada uno de sus nodos. Desde el momento en que se crean los nodos del JTree, se crear una instancia a la clase (nombre, tel, edad, etc) con los campos que se requieran y solo se retorna en su codigo de la clase el nombre del nodo a quien va vinculado la informacion:

El codigo es el siguiente:

DefaultMutableTreeNode nodoAgregar= null;
DefaultMutableTreeNode clasedatos = null;
//cuando se utiliza top.add(nodoAgregar), significa que el nodo se agregara como padre y si no se especifica,
//las demas agregaciones en nodoAgregar.add seran hijas. utilizando clasedatos para hijos en nodoAgregar
//nodoAgregar y raizNodo para padres
//clasedatos y nodoAgregar y para hijos

//Esta instruccion hace referencia a una clase llamada Datoscls, la cual recibe los valores que se alamacenaran en las respectivas variables que existen o sean asignadas en la clase Datoscls. Con esta intruccion el JTree unicamente necesita el nombre del nodo que va a agregar y el programador se preocupa en como o que contendra ese nodo.


nodoAgregar = new DefaultMutableTreeNode(new Datoscls (valor1,valor2, valorn, "nombre del nodo"));

tree.add(nodoAgregar);


/////////////////////////////////

La estructura de clase Datoscls es la siguiente:

private class Datoscls {
public int valor1;
public int valor2;
public String Nombre;

public DominioInformacion(int xvalor1, int xvalor2, String xTituloNodo) {
valor1=xvalor1;
valor2=xvalor2;

Nombre=xTituloNodo;
}


//Esta metodo permite que cuando se invoque la clase regrese la cadena
public String toString() {
return Nombre;
}
}





Con estas instrucciones al momento de seleccionar en el JTree el nodo que se requiera automanticamente accesamos a sus datos que lo relacionan:
(tree es el nodo raiz del JTree)
DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();

Object nodeInfo = node.getUserObject();

Datoscls Datosx = (Datoscls)nodeInfo;

System.out.print("Datos del nodo seleccionado: " + Datosx.Nombre + "/"+Datosx.valor1+"/"+Datosx.valor2);



Con la relacion de la clase Datoscls solo se tiene que hace la consulta especifica de la tabla o tablas que quieras representan de una bd a un JTree. Insertar dicha informacion en Datoscls e inemediatamente establecer el agregado de los nodos al JTree.

Nota: Aun sigo con pruebas (validaciones, etc), pero en cuanto lo tenga ya terminado con mucho gusto pongo el condigo que se requiera.............
  #6 (permalink)  
Antiguo 14/10/2004, 07:08
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Muchas gracias
Y no olvides por favor poner tus codigos entre las etiquetas de PHP para de esta forma sea mas facil leerlo.

ejemplo
Código PHP:
for(int i 010i++) {
    
//y asi esto queda indentado y mas ordenado

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #7 (permalink)  
Antiguo 14/10/2004, 11:07
 
Fecha de Ingreso: abril-2004
Ubicación: Morelos, México
Mensajes: 124
Antigüedad: 20 años
Puntos: 0
Saludos Gonzalo.......

La verdad no se como poner los codigos entre las etiquetas de PHP o no se a que te referiras. Yo solo copie y peque algunas explicaciones dentro de esta area del Mensaje.

Saludos.........
  #8 (permalink)  
Antiguo 14/10/2004, 12:40
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Es muy sencillo, solo debes poner todo tu codigo entre [ PHP ] y [/ PHP ]
Eso si, a pesar de ahi aparecer con un espacion entre los [] y PHP no debe ir espacio, pero si te lo ponia sin espacion no lo verias y verias un bolque de codigo como el del ejemplo que te di anteriormente.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #9 (permalink)  
Antiguo 28/07/2005, 10:23
 
Fecha de Ingreso: julio-2005
Mensajes: 6
Antigüedad: 18 años, 9 meses
Puntos: 0
Pregunta Difilcultad de mostrar en jtreee

Tengo este codigo pero solo me imprime la raiz y el primer elemento;


Código PHP:
public void createNodes(NodoArbol x) {
        
JTree tree null;
        
DefaultMutableTreeNode nodoAgregarnull;
        
DefaultMutableTreeNode clasedatos null;       
       
        
        
DefaultMutableTreeNode category = new DefaultMutableTreeNode("(Raiz es ) "+arbol.raiz.nombre+" "+arbol.raiz.dato);
        
DefaultTreeModel treeModel = new DefaultTreeModel(category); 
 
        
treeModel.insertNodeInto(new DefaultMutableTreeNode x.dato+" "+x.nombre),category,0);
             
             
        
       
jTree1.setModel(treeModel);
      
    }
//Fin del metodo 
  #10 (permalink)  
Antiguo 28/07/2005, 10:25
 
Fecha de Ingreso: julio-2005
Mensajes: 6
Antigüedad: 18 años, 9 meses
Puntos: 0
Pregunta Difilcultad de mostrar en jtreee

Tengo este codigo pero solo me imprime la raiz y el primer elemento;


Código PHP:
public void createNodes(NodoArbol x) {
           
        
DefaultMutableTreeNode category = new DefaultMutableTreeNode("(Raiz es ) "+arbol.raiz.nombre+" "+arbol.raiz.dato);
        
DefaultTreeModel treeModel = new DefaultTreeModel(category); 
 
        
treeModel.insertNodeInto(new DefaultMutableTreeNode x.dato+" "+x.nombre),category,0);
             
             
        
       
jTree1.setModel(treeModel);
      
    }
//Fin del metodo 
  #11 (permalink)  
Antiguo 25/09/2011, 12:46
 
Fecha de Ingreso: agosto-2009
Mensajes: 18
Antigüedad: 14 años, 8 meses
Puntos: 0
Información Respuesta: ayuda sobre JTree

Amigo ,

Tu problema justo fue resuelto en la siguiente url:

http://neurocodigo.wordpress.com/2011/01/25/ii-parte-llenar-jtree-con-base-de-datos-mysql/

Llenan un Jtree desde una base de datos mysql.

Y alli puedes encontrar otros ejemplos :
http://neurocodigo.wordpress.com/2011/01/25/i-parte-jtree-en-netbeans/

Saludos..
  #12 (permalink)  
Antiguo 25/09/2011, 14:45
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: ayuda sobre JTree

Este tema es de hace 7 anios, no revivas a los zombies
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:31.