elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Problema con clases
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con clases  (Leído 2,373 veces)
axeelcs

Desconectado Desconectado

Mensajes: 54


Ver Perfil
Problema con clases
« en: 7 Julio 2012, 19:04 pm »

Buenas, disculpen las molestias, pero me supera este error ...
Yo había programado toda la interfaz con sus funciones en una misma clase (grave error) .
Ahora que lo quiero separar de a poquito, primero saqué la función de abrir archivo (a continuación la clase)

Código:
public void actionPerformed(ActionEvent arg0) {

fc = new JFileChooser();
FileFilter filter1 = new ExtensionFileFilter("T, ND, NH", new String[] {
"T", "ND", "NH" });
fc.setFileFilter(filter1);

// fc.getSelectedFile().getName().endsWith("T");

int seleccion = fc.showOpenDialog(null);

if (seleccion == JFileChooser.APPROVE_OPTION) {
File fichero = fc.getSelectedFile();
BufferedReader br = null;
//interfaz.getAreaTexto().enable(true);
try {
br = new BufferedReader(new FileReader(fichero));
String linea = null;
String lineaTotal = "";
try {
linea = br.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
while (linea != null) {

lineaTotal = lineaTotal + linea
+ System.getProperty("line.separator");

linea = br.readLine();
}

interfaz.getAreaTexto().setText(lineaTotal);

/*if (fichero.getName().endsWith("ND")) {
interfaz.getAreaTexto().setWrapStyleWord(true);

}*/

br.close();

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
try {
br.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}



}

No hace falta que se lea, tengo declarados en la clase :

Código:
	private Interfaz interfaz;
private JFileChooser fc;
Y claramente la clase hereda de ActionListener .. el problema es que cuando en la interfaz, toco el botón abrir, selecciono el archivo, me aparece este error :

Citar
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
   at abrirArchivo.actionPerformed(AbrirArchivo.java:117)
   at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
   at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
   at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
   at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
   at java.awt.Component.processMouseEvent(Unknown Source)
   at javax.swing.JComponent.processMouseEvent(Unknown Source)
   at java.awt.Component.processEvent(Unknown Source)
   at java.awt.Container.processEvent(Unknown Source)
   at java.awt.Component.dispatchEventImpl(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
   at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
   at java.awt.Container.dispatchEventImpl(Unknown Source)
   at java.awt.Window.dispatchEventImpl(Unknown Source)
   at java.awt.Component.dispatchEvent(Unknown Source)
   at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
   at java.awt.EventQueue.access$000(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.awt.EventQueue$3.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.awt.EventQueue$4.run(Unknown Source)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
   at java.awt.EventQueue.dispatchEvent(Unknown Source)
   at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
   at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
   at java.awt.EventDispatchThread.run(Unknown Source)

Siempre sobre el getAreaTexto, y la verdad no se que puede ser, me esta rompiendo la cabeza ...

Y en la interfaz probé de todo, ahora lo tengo así :

Código:
	private JTextArea areaTexto = new JTextArea();

Código:
	public JTextArea getAreaTexto() {
return areaTexto;
}

Y al botón lo llamo así :

Código:
		abrir.addActionListener(new abrirArchivo());


Desde ya, les agradezco infinitamente su ayuda !


En línea

axeelcs

Desconectado Desconectado

Mensajes: 54


Ver Perfil
Re: Problema con clases
« Respuesta #1 en: 7 Julio 2012, 21:54 pm »

Agradecería mucho mucho su ayuda :$, la verdad es que no se como resolverlo :(
Por más que empiece un nuevo proyecto.


En línea

axeelcs

Desconectado Desconectado

Mensajes: 54


Ver Perfil
Re: Problema con clases
« Respuesta #2 en: 7 Julio 2012, 22:32 pm »

Me parece que el problema viene por el lado de que no inicializo interfaz, por lo que esta trabajando sobre null .

Pero si en la otra clase pongo interfaz = new Interfaz(); se me abre otra ventana :S

Y no me permite seguir usando los otros botones porque estan en null .
En línea

axeelcs

Desconectado Desconectado

Mensajes: 54


Ver Perfil
Re: Problema con clases
« Respuesta #3 en: 8 Julio 2012, 17:58 pm »

Por favor :(
En línea

axeelcs

Desconectado Desconectado

Mensajes: 54


Ver Perfil
Re: Problema con clases
« Respuesta #4 en: 8 Julio 2012, 19:19 pm »

Ya lo solucione, no se si estará bien o no, pero en la clase de prueba donde inicializo la interfaz = new Interfaz() lo hice estático, de manera que en las clases de abrir archivo, nuevo archivo, etc, creo un private Prueba menu, donde llamo a todas las funciones.
Espero que este bien resuelto.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con Tomcat y clases java
Java
talico 1 5,009 Último mensaje 10 Octubre 2006, 11:59 am
por talico
Problema con las clases en c#
.NET (C#, VB.NET, ASP)
The Jackal 2 2,581 Último mensaje 18 Noviembre 2007, 13:10 pm
por The Jackal
Problema con clases
Java
Debci 3 2,561 Último mensaje 9 Julio 2009, 20:53 pm
por Amerikano|Cls
Problema con Clases
.NET (C#, VB.NET, ASP)
Dreamcacher 1 2,048 Último mensaje 5 Octubre 2011, 20:51 pm
por Keyen Night
problema con clases php
PHP
Zeroql 8 3,836 Último mensaje 13 Noviembre 2011, 20:08 pm
por Zeroql
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines