Klaudioz
Usuario Novato
Usuario Novato

hola, tengo un problema con este codigo

http://usuarios.lycos.es/klaudioz/TablaSwing.java

al compilarlo todo perfecto, al ejecutarlo tb, pero a la hora de abrir el archivo que el programa analizara se cae,y esto tira por consola:

java.lang.NullPointerException
at TablaSwing.abrir(TablaSwing.java:57)
at GestorMenus.actionPerformed(GestorMenus.java:18)

la linea 57 es: scrollTabla.setPreferredSize(new Dimension(450, 400));

creo que es cuando quiere dibujar la tabla con los datos ya importados

he intentado de todos moder entender porque se cae, incluso instale el netbeans para debuggearlo, pero no hay caso, se ve todo bien, los datos capturados del archivo estan bien analizados segun el debugger.

el programa abre un archivo tipo datos.dat

nombre valor ctad
lapiz 100 50
papel 10 5

y se supone que debe ponerlo en una jtable para analizarlo o editarlo y luego guardarlo, pero en la parte que tiene que mostrar los resultados se cae

cualquier sugerencia me ayudaria mucho.
gracias


Jose_Java
Usuario habitual
Usuario habitual

Ese error que te da de 'NullPointerException' (excepcion de puntero nulo) es muy tipico de lenguajes como Java o C++, que son orientados a objetos. Quiere decir que una variable/puntero que has definido no apunta en memoria hacia ningún objeto de ese tipo.

Yo me quedaria con una parte de tu codigo:

if(scrollTabla !=null)
panelTabla.remove(scrollTabla);
tabla = new JTable(datosFichero);
scrollTabla.setPreferredSize(new Dimension(350,100));
panelTabla.add(scrollTabla);
panelTabla.revalidate();


scrollTabla es de tipo JScrollPane. No veo que construyas un nuevo objeto de este tipo en ningun lugar. Antes de poder usar el metodo setPreferredSize tendrías que hacer algo así:

scrollTabla = new JScrollPane(parametros...);

asi scrollTabla ya tendría su lugar en memoria reservado con un objeto de tipo JScrollPane(), y ya podrías usar sus metodos.
Construyelo justo antes de la llamada a setPreferredSize(..), ya que antes estás comprobando si ya hay un objeto creado, y si existe lo borras.

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
TemaUsuariosRespuestasVisitasActividad
Por: , el 02/May/2008, 04:49
setoja8705kMay/08
Por: , el 27/Sep/2005, 05:19
miguelfut71202kSep/05
Por: , el 13/Dic/2007, 15:22
mateocamm02kDec/07