Estoy INTENTANDO hacer un chat. El problema lo tengo para actualizar los mensajes enviados y el texto que debe aparecer en el JTextArea. Entonces, tengo lo siguiente, esencialmente:
Código
Fichero 1: clase InterfazDelChat { public InterfazDelChat() { super("Titulillo"); getContentPane().add(areaChat); getContentPane().add(conec); areaChat.addActionListener(this); } @Override { new ServidorDelChat; } { new InterfazDelChat(); } }
Fichero 2: clase ServidorDelChat
Código
public static class ServidorDelChat { public ServidorDelChat() { //Codigo del socket hasta el punto de DataInputStream tenerlo en el String mensajeRecibido) while (desconectado != true) { //Lo que yo creia que tenia que poner: InterfazDelChat.areaChat.append("\nCliente dice:\n" + mensajeRecibido + "\n"); } /*Lo que ocurre, cuando pongo esto, es que el texto no llega a la interfaz, al JTextArea del programa, hasta que no ha completado el bucle (cuando pongo un numero de opciones finito, no como el que esta puesto aqui, si pongo 3, envia 3 mensajes diferentes...), porque si quiero que esto se pueda repetir, ¿tendre que meterlo en un bucle, no? El caso es que me lo imprime, y me lo imprime bien, pero tarde. No me lo imprime en la pantalla, en el caso de poner 3 como fin del bucle, hasta que no ha superado el bucle, no carga el texto (no carga el texto de linea en linea, carga solo al final del bucle todos los mensajes acumulados...*/ } }
He imaginado que la clase InterfazDelChat no se vuelve a cargar hasta que acaba con el bucle, que termina el objeto, y así vuelve a cargar los demás objetos. Entonces... mi pregunta sería:
- ¿Cómo puedo cargar el JTextArea de la clase InterfazDelChat desde la otra clase ServidorSocket? ¿O cómo puedo cargar de nuevo un objeto, o actualizarlo, estando este en una, y queriendo cargarlo desde otra?
He estado buscando y probando diversas cosas, pero nada surgio efecto... Gracias por todo!!