Eliminar varios componentes a la vez de un applet

Lorena
29 de Marzo del 2006
Hola estoy empezando en esto de los applets y he realizado un applet muy pequeño que tiene unos cuantos botones y con el boton borrame desearía borrar todos a la vez. El problema es que sólo me borra uno de ellos y los demás los deja, pongo el código para que lo echeis un vistazo y me conteis:

public class Applet1 extends Applet {

JButton boton;
JButton borrar;
JPanel panel;
Vector botones;
private boolean isStandalone = false;
//Obtener el valor de un parámetro
public String getParameter(String key, String def) {
return isStandalone ? System.getProperty(key, def) :
(getParameter(key) != null ? getParameter(key) : def);
}

//Construir el applet
public Applet1() {
}

//Inicializar el applet
public void init() {
this.setBackground(Color.white);
borrar = new JButton("Borrame");
int contador=3;
botones=new Vector();
for(int i=0; i<contador; i++){
boton = new JButton("Quiero eliminarme"+ (botones.size() + 1));
botones.add(boton);
System.out.println("el vector de botones tiene: "+botones);
//boton.setToolTipText("Prueba");
panel = new JPanel();
panel.setBackground(Color.white);
panel.add(boton);
this.add(panel);
}
this.add(borrar);
//al hacer click en el boton se debe eliminar
borrar.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e) {
System.out.println("El tamaño del vector es: "+botones.size());
int lastIndex = botones.size() - 1;
System.out.println("El indice a eliminar es: "+lastIndex);
//paso los objetos del vector de lista de botones a componentes
JButton nuevoboton = (JButton)botones.elementAt(lastIndex);
panel.remove(nuevoboton);
botones.removeElementAt(lastIndex);
System.out.println("El tamaño del vector ahora es: "+botones.size());
panel.revalidate(); //Make the button disappear.
panel.repaint(); //Make the button disappear.
//boton.setToolTipText(null);
}
} );

try {
jbInit();
}
catch (Exception e) {
e.printStackTrace();
}
}

Muchas gracias por la ayuda. Saludos
Lorena