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

Cambiar de color NODOS de un JTREE

Estas en el tema de Cambiar de color NODOS de un JTREE en el foro de Java en Foros del Web. Buenas, tambien me puede ser de gran utilidad saber como se cambia de color el texto de un determinado nodo, ya que he encontrado este ...
  #1 (permalink)  
Antiguo 28/07/2006, 03:03
 
Fecha de Ingreso: julio-2006
Mensajes: 206
Antigüedad: 17 años, 9 meses
Puntos: 2
Cambiar de color NODOS de un JTREE

Buenas, tambien me puede ser de gran utilidad saber como se cambia de color el texto de un determinado nodo, ya que he encontrado este metodo:

setTextColorSelection
setTextColorNonSelection

pero como puedo hacer que pueda pintar los q yo quiera independientemente de q este o no este seleccionado?? bueno haber si alguien m puede ayudar. Un saludo y gracias!!
  #2 (permalink)  
Antiguo 22/08/2006, 05:38
 
Fecha de Ingreso: agosto-2006
Mensajes: 5
Antigüedad: 17 años, 8 meses
Puntos: 0
Yo en mi programa uso esta clase pero no me pinta el arbol si la uso, si encuentras respuesta me podrías ayudar? gracias:

public class RendererArbol extends DefaultTreeCellRenderer
{
Mi_applet applet = null;

public RendererArbol(Mi_applet applet)
{
super();
this.applet = applet;
}
public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus)
{
NodosArbol nodo=(NodosArbol)value;

//pintamos los nodos que elegidos con color azul
String sentencia="SELECT TIPO_PROY FROM TCP_PROYECTOS WHERE NOM_PROYECTO = '" + nodo.toString() + "'";
try
{
applet.getConexion().consultar(sentencia);
while (applet.getConexion().rset.next()){
if(applet.getConexion().rset.getInt("TIPO_PROY")== 1 || applet.getConexion().rset.getInt("TIPO_PROY")==11)
{
this.setForeground(Color.blue);
}
}
applet.getConexion().cerrarConsulta();
}
catch(SQLException e)
{
JLogTrace.getInstance().logTrace("RendererArbol::g etTreeCellRendererComponent","Error : " + e.getMessage());
}
//fin de pintar nodos

return (this);
}
  #3 (permalink)  
Antiguo 22/08/2006, 06:05
 
Fecha de Ingreso: agosto-2006
Mensajes: 5
Antigüedad: 17 años, 8 meses
Puntos: 0
De acuerdo ya tengo la solucion

tengo la solucion a porque no funcionaba la clase, hay que añadir esta linea de codigo:

super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
NodosArbol nodo=(NodosArbol)value;

dentro del método getTreeCellRendererComponent.

Espero que te sirva de ayuda.
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:37.