Problema con JTextArea al compartir en objeto
Publicado por Alejandro (3 intervenciones) el 12/07/2017 19:20:00
Buenas gente. Les comento mi situacion. Esto tratando de crear una aplicacion de chat que se comunique entre dos sockets, uno cliente el otro servidor. Durante la interfaz grafica, necesito compartir el JTextArea que contiene todos los mensajes enviados para que de esta manera, los distintos hilos que reciben y envian mensajes, puedan modificarlo. Para esto cree una clase "Variables" que contiene el JTextArea, le invoque el get, el set y el constructor correspondiente. Pero cuando quiero llamarlo desde una de las ventanas de la interfaz grafica, java me tira un NullPointerException, y no encuentro el problema. Les dejo el codigo del JTextArea y de la ventana del chat.
JTEXTAREA
VENTANA DEL CHAT
ERROR
Agradeceria su ayuda
JTEXTAREA
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package paqueteCliente;
import javax.swing.JTextArea;
public class Variables {
JTextArea textoChat;
public Variables(JTextArea textoChat) {
this.textoChat = textoChat;
this.textoChat.setBounds(10, 11, 453, 299);
}
public JTextArea getTextoChat() {
return textoChat;
}
public void setTextoChat(JTextArea textoChat) {
this.textoChat = textoChat;
}
}
VENTANA DEL CHAT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package paqueteCliente;
import java.awt.SystemColor;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class VentanaChat extends JFrame {
private static final long serialVersionUID = -2714925937215744545L;
private JFrame frame2;
private JTextField textoMensaje;
Variables var;
public VentanaChat(Variables text) {
var = text;
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setBackground(SystemColor.activeCaption);
getContentPane().setLayout(null);
textoMensaje = new JTextField();
textoMensaje.setFont(new Font("Tahoma", Font.PLAIN, 13));
textoMensaje.setBounds(10, 321, 469, 29);
getContentPane().add(textoMensaje);
textoMensaje.setColumns(10);
var.textoChat.setBounds(10, 11, 453, 299);
getContentPane().add(var.textoChat);
JButton botonEnviaMensaje = new JButton("ENVIAR");
botonEnviaMensaje.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
botonEnviaMensaje.setFont(new Font("Elephant", Font.PLAIN, 14));
botonEnviaMensaje.setBackground(new Color(0, 255, 0));
botonEnviaMensaje.setBounds(495, 309, 159, 41);
getContentPane().add(botonEnviaMensaje);
initialize();
}
private void initialize() {
frame2 = new JFrame();
frame2.setBounds(100, 100, 450, 300);
frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
ERROR
1
2
3
Exception in thread "main" java.lang.NullPointerException
at paqueteCliente.VentanaChat.<init>(VentanaChat.java:31)
at paqueteCliente.Cliente.main(Cliente.java:6)
Agradeceria su ayuda
Valora esta pregunta
0