Ver Mensaje Individual
  #4 (permalink)  
Antiguo 18/10/2011, 15:49
gaedcu
 
Fecha de Ingreso: junio-2011
Ubicación: Medellín
Mensajes: 12
Antigüedad: 13 años, 7 meses
Puntos: 0
De acuerdo Respuesta: Menú Dinámico J2SE

Lo he logrado con el método de la reflexión, de la siguiente forma:

si selecciono la opción azul dentro de colores:

mi menu
colores
azul
rojo


//evento de click en menú tree
void doMouseClicked(MouseEvent me) {
TreePath tp = tree.getPathForLocation(me.getX(), me.getY());
opcion = (tp.getLastPathComponent()).toString(); //llevo a string la opcion seleccionada en el jtree (azul)
opcion1 = (tp.getParentPath()).toString(); //llevo la ruta donde esta mi opcion dentro del jtree (mimenu, colores)
int tam = (opcion1.length())-1;
area = opcion1.substring(6,tam);// la recorto para que me muestre solo el nodo de la opcion (colores)

if (tp != null){
try{
Class c = Class.forName(area+"."+opcion); //crea clase con el nombre completo que elegi (colores.azul, pues mi clase jpanel azul la tengo dentro del package colores)
Object panela = c.newInstance(); crea una nueva instancia
tab_contenido.addTab(opcion, null, (Component) panela, opcion+" en "+area); //mi panel se mostrara en un jtabbedpane, así que adiciono un nuevo tab pero como componente.

}
catch(Exception e){
System.out.println(e.toString());
}
}
else{

}
}

espero le sirva a alguien