Esta vez tengo un problema con un 'array de botones', pasa que por medio de una clase se crean y escuchan a un 'ActionListener' que se encuentra en el mismo array, intento que el los botones escuchen 2 instrucciones, la primera vez que efectué la primer acción 'Desbloquear el PC' y la segunda que revierta es decir 'Bloquee el PC'
El codigo es el siguiente:
Código Java:
Ver original
public void init(List<String> clients) { //Clients recibe las ip de los clientes que se conectan a mi servidor int x = clients.size(); //Aquí leo cuantos son y dependiendo de eso se crea en num de botones if(x!=a){ Pcs.removeAll(); Pcs.repaint(); pack(); for (int i=0; i<botones.length; ++i){ //botones[i]=new JButton(pc); //botones[i].setBorder(null); //botones[i].setBorderPainted(false); //botones[i].setContentAreaFilled(false); botones[i].setDefaultCapable(false); //botones[i].setFocusPainted(false); //botones[i].setFocusable(false); botones[i].setToolTipText(pc); Pcs.add(botones[i]); repaint(); @Override ///////////////////////////////////////////////////////////////// for(int j=0;j<botones.length;j++){ int num=j+1; if( botones[j].getText().equals("Libre PC"+num) ) { botones[j].setText("Ocupada PC"+num); blo(a); break; } // He probado quitar, cambiar y dejar en uno o en otro el 'break' pero ni así funciono if( botones[j].getText().equals("Ocupada PC"+num) ) { botones[j].setText("Libre PC"+num); desblo(a); break; } } /////////////////////////////////////////////////////////////////////////// } }); pack(); } } }
Tuve que usar otro 'for' con 'int j', por que no me dejaba usar 'i' y el problema de hacerlo global es que 'i' suma sus valores y ya no coinciden los nombre de botón
Espero puedan ayudarme, pues no encuentro como ya probé usando while antes y después del 'for' con 'int j'
Gracias, por leerme