Problemas con JTextField

Maria
31 de Octubre del 2003
Hola!!

Tengo un problemilla, a ver si me podeis ayudar.

Estoy utlizando NetBeans, y tengo creado un JFrame en el que hay una JTextArea, y otro JFrame en el que hay un JTextField, de modo que cuando añado una cadena en el JTextField se guarde en la JTextArea del otro JFrame.

Me da error de Null Pointer Exception, ya se que eso es porque no está inicializado JTextField (que si esta inicializado, al igual que la JTextArea), no se como resolverlo.

Si en vez de querer guardarlo utilizo otro String para mostrar lo que introduzco en JTextField, tampoco lo hace.

Si alguien me puede ayudar, lo agradeceria.

Monica
31 de Octubre del 2003
¿Cómo le pasas el valor al otro JFrame?

Maria
31 de Octubre del 2003
Utilizo la siguente sentencia:

jTextArea.setText(jTextField.getText());

dentro de un metodo generado por el IDE de NetBeans que es:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

}


en el que solo tengo esa instrucción.

Creo que la referencia hecha al JTextArea dentro de la clase del JTextField esta bien. Me parece muy raro que me pase con un String lo mismo, la sentencia que tengo para el String es:


String cadena = new String( jTextField1.getText());
System.out.println(cadena);

A ver si ves solucion a esto.

Saludos

Monica
31 de Octubre del 2003
Hola María,

El problema que le veo, si lo que quieres hacer es lo que pienso, que no le indicas a qué jFrame pertenece el jTextArea, o el jTextField...

prueba algo así como:
String cadena = new String(jFrame1.jTextField1.getText());


Spike
31 de Octubre del 2003
Hola!

Yo tengo un problema parecido...
Tengo una jFrame q me llama a otro, en este, se cambia el valor de una variable perteneciente a una clase que he creado yo. El problema viene cuando quiero devolver ese valor al jFrame principal. Había pensado en declarar una funcion en el segundo jFrame que llamado desde la primera, me devuelva el valor de esa variable. Pero cuando utilizo ese metodo desde el frame principal me dice que no existe.

Espero haberme explicado bien.

¿Qué solución hay para esto?

Maria
31 de Octubre del 2003
Hola Monica!

He probado lo que me has dicho y me da error cuando despues del jFrame pongo jTextField.

Lo tengo declarado com atributo de la clase, no deberia haber ningun problema para acceder a él, pero si lo hay. Tambien tengo un metodo por el que accedo a la cadena escrita en el JTextField, ¿cual es la mejor manera?

Saludos

Maria
31 de Octubre del 2003
Hola de nuevo.

Creo que he encontrado el por qué de mi problema.
Realmente lo que no me hace bien es escribir en el JTextArea de JFrame1, no me escribe nada, solo lo hace cuando lo inicializo con alguna cadena. Pero si quiero hacer:

String cadena = new String("hola");
jTextArea1.setText(cadena);

no lo hace.

Creo que esto es debido a que el Jpanel en que se encuentra jTextArea1 tiene la propiedad de layout a NULL.

Ya no es un problema de llamadas entre frames, sino que no me inserta el texto directamente.

¿Sabeis si es esto realmente el problema?

Saludos


rml
31 de Octubre del 2003
yo tengo tmb un problema, yo uso jBuilder, pero bueno..
el problema es que cuando actualizo el contenido de un textfield desde una base de datos, necesito realizar otars acciones, el caso es que necesito capturar el evento de actualizacion, algo asi como un "onChange", pero solo encuentro eventos sobre teclas..
Alguien sabe como capturar este evento??
Gracias.

Pato Lucas
31 de Octubre del 2003
Si quieres saber cuando se esta escribiendo, aparte de los eventos de teclas, puedes utilizar un listener del documento, el cual te notifica cuando el documento cambia. haz JTextField.getDocument().addDocumentListener(new DocumentListener () { public void .... })

Monica
31 de Octubre del 2003
Hola rml

Has probado con el evento inputMethotTextChanged

Yo nunca lo he utilizado... pero puede que te sirva...

Suerte!