Swing y Applets

1. (CHAT) El ejercicio de esta sesión es el mismo que el de la sesión de AWT: construir la aplicación de chat. Si lo termináis y os da tiempo, os proponemos añadirle algunas de las siguientes mejoras:

Así, se sustituye el código que incluía el TextArea:

TextArea txtBuffer = new TextArea("", 5, 5, 
		     TextArea.SCROLLBARS_BOTH);
add(txtBuffer, BorderLayout.CENTER);

por:

JTextArea txtBuffer = new JTextArea();
JScrollPane panelBuffer = new JScrollPane(txtBuffer);
getContentPane().add(panelBuffer, BorderLayout.CENTER);
Hay que tener en cuenta que para añadir elementos y cambiar algunas propiedades de un JFrame es distinto a como se hace en un Frame. Por ejemplo, en un Frame se hace:
setLayout(new BorderLayout());
add(panelSup, BorderLayout.NORTH);

Mientras que en un JFrame se hace:

getContentPane().setLayout(new BorderLayout());
getContentPane().add(panelSup, BorderLayout.NORTH);

Es decir, se obtiene el ContentPane (el contenedor) de la ventana, y se llama a los métodos del mismo.

Hay que tener en cuenta que para obtener el texto del JPasswordField se tiene que llamar al método getPassword(), que devuelve un array de char. Para convertirlo luego a cadena hay que utilizar un constructor de la clase String, de forma que en lugar de poner:

txtPassword.getText();
Se pone:
new String(txtPassword.getPassword());

(siendo el objeto txtPassword de tipo JPasswordField en este último caso, y de tipo JTextField en el anterior).

Para entregar: Debéis entregar un ZIP e3_2.zip con: