Bueno está práctica llega un poco tarde. Esto de los blogs… no me ha acabado de convencer, yo creo que es más productivo un foro,donde tengamos acceso a todos de una forma más cómoda, no tener que buscar compañero por compañero a ver quien lo ha actualizado y más de uno se queda sin visitas. (Bueno esto es sólo una opinión)
Bueno como iba diciendo está es la penúltima práctica, muchos estuvieron trabajando con el videojuego… mi compañero uno de ellos, que le tengo abandonado con el juego…:S
1.En el primer ejercicio te pedían una sencilla ventana con un botón y al pincharlo tenía que salir un texto…tuve un pequeño problema, resulta quye había hecho el JLabel texto; lo había incluído en el JPanel, pero no lo había incluído en el Container o JFrame, así que después del pequeño despiste por fin lo conseguí. Utilice el setText(” texto”), tuve que escribir el código de la clase Manejador (con implements ActionListener) a parte, y escribir :
Manejador manejador = new Manejador(); boton1.addActionListene(manejador); //agregamos la clase Manejador al boton
2. El segundo te piden algo parecido, en este caso se debe crear una etiqueta JLabel etiqueta = new JLabel(“etiqueta”); . No podemos olvidar poner etiqueta.setOpaque(true); (para que se visiualice) ,y luego agregarla a nuestro Frame panel.add(etiqueta);Ahora el manejador lo modificaremos también de tal forma que al pinchar se cambie el color de la etiqueta, pondré el código de la clase Manejador que utilizamos dentro de nuestra clase Simple01GUI:
public class Manejador implements ActionListener{
public void actionPerformed (ActionEvent e){
Object source1 = e.getSource();
if(source1==(JButton)boton1) etiqueta.setBackground(Color.green);
}
}
3. Te piden utilizar hilos que por una parte cambien el color del panel(JPanel) cada vez que le demos al boton y cada vez que pulsemos ENTER se cambiara el color de la etiqueta(JLabel). Tenemos un lío tremendo con los hilos, en la práctica anterior vimos el TwoThreads para hacer dos cosas a la vez, pero esto meterlo ahora en botones nos pareció muy complicado… Por una parte creamos un método que cambiase el color y que luego fuese llamado por actionPerformed (para que cambie la etiqueta cuando pulsemos el botón):
public void cambiaColor(){
if(etiqueta.getBackground().equals(Color.green
System.
out.println(Thread.currentThread().getName() +“cambio de color”);
}
else
{etiqueta.setBackground(Color.green);}
}
Después creamos un objeto StreamReader para leer del teclado, y cada vez que pulsemos intro (‘\n’) se cambie el color del panel:
int p;
while( (p=input.read())!= -1) {
if (p == ‘\n’) {
System.out.println(Thread.currentThread().getName()+
“INTRO”);
}
}
4.Ahora nos piden utilizar los hilos para que el boton cambie de color cada vez que le pinchemos. Así queda nuestro actionPerformed:
public void actionPerformed(ActionEvent e){
if(boton.getBackground().equals(Color.PINK)){
boton.setBackground(Color.CYAN);
System.out.println(Thread.currentThread().getName() +
“:cambio de color”);
}
else{
boton.setBackground(Color.PINK);
}
}
5.Este no lo llegamos a implementar, pero nos lo planteamos. Había que crear una base de datos donde se guardara el nombre de varios alumnos y su NIA, y hacer dos métodos para utilizar los hilos, por ejemplo impirmir el nombre del alumno por una parte y por otra imprimir el NIA, también nos pedía meter un retardo para simular el proceso Thread.sleep(2000);
P.D. ¿A alguien le va mal el blog? Para actualizar me ha costado más de lo normal… se me bloqueaba y perdía datos…
Aún no hay comentarios
Aún no hay comentarios.
RSS de los Comentarios Identificador URI de TrackBack
Deja un comentario
