Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Foros > Java (básico) > Por qué hace esto el JTable?
-Foros de debate

Java (básico)
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

Por qué hace esto el JTable?
Enviado por laura_morgar el día 11 de junio de 2008

Hola a todos, tengo el siguiente problema:

Tengo una tabla en la que inicialmente tengo unas determinadas columnas pero que, en función de si se pulsa algún botón, se pueden insertar nuevas columnas. El principal problema es que las tengo que insertar justo antes de la última columna.

He probado a hacer de todo. Si se las añadía a la tabla {tabla.getColumnModel().addColumn(nueva columna)}, cuando hacía el renderer {a pesar de que ponía tablal.getColumn(nueva columna).setCellRenderer} al llegar a la nueva columna me daba un error (ArrayIndexOfBoundsException o algo así).
Después he probado a añadir las tablas directamente al modelo y tengo el siguiente código:

System.out.println("tablaPlanificacionProyecto.getColumnCount(): "+tablaPlanificacionProyecto.getColumnCount());
modelo.addColumn(nombre);

System.out.println("tablaPlanificacionProyecto.getColumnCount(): "+tablaPlanificacionProyecto.getColumnCount());
int posicion = modelo.findColumn(nombre);
System.out.println("tablaPlanificacionProyecto.getColumnModel().getColumnIndex(nombre): "+tablaPlanificacionProyecto.getColumnModel().getColumnIndex(nombre));
tablaPlanificacionProyecto.getColumn(nombre).setCellRenderer(render);
tablaPlanificacionProyecto.moveColumn(modelo.findColumn(nombre),i);
System.out.println("tablaPlanificacionProyecto.getColumnModel().getColumnIndex(nombre): "+tablaPlanificacionProyecto.getColumnModel().getColumnIndex(nombre));

Pues bien, según los println que tengo, me sale que se colocan en la columna adecuada (primero se insertan al final y luego las muevo a la posición i). Sin embargo, cuando se muestra la tabla veo que las columnas se muestran al final (en lugar de donde deberían). Además, la tabla deja de renderizarse según el renderer que le tengo asignadas a las columnas.

¿Alguien tiene alguna idea de porqué me está haciendo esto y cómo podría solucionarlo?

Muchas gracias de antemano

 

Tienda
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network