La tua struttura penso sia più o meno simile a questa:
Hai la classe Frame che ha il metodo main(), da cui viene lanciata l'applicazione (creando un Thread e chiamando un metodo makeGUI(), dovresti farlo sempre quello che vedi nel main).codice:import java.awt.*; import java.awt.event.*; import javax.swing.*; class Utility { public static void setValue(JButton bt1, JButton bt2, boolean value) { bt1.setEnabled(value); bt2.setEnabled(value); } } class Frame extends JFrame implements ActionListener { private JButton bottone1, bottone2, ad; Frame() { JPanel pannello = new JPanel(); bottone1 = new JButton("Bottone1"); bottone2 = new JButton("Bottone2"); ad = new JButton("Attiva/Disattiva"); pannello.add(bottone1); pannello.add(bottone2); pannello.add(ad); add(pannello); ad.addActionListener(this); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void actionPerformed(ActionEvent ae) { if(bottone1.isEnabled() && bottone2.isEnabled()) { Utility.setValue(bottone1,bottone2,false); } else { Utility.setValue(bottone1,bottone2,true); } } public static void makeGUI() { Frame f = new Frame(); f.setSize(400,400); f.setVisible(true); } public static void main(String[] args) { try { SwingUtilities.invokeAndWait(new Runnable() { public void run() { makeGUI(); } }); } catch(Exception e) {} } }
Come vedi mi appoggio alla classe Utility ed al metodo setValue() passando i 2 bottoni da abilitare/disabilitare ed il loro valore.
Se hai ancora problemi posta il codice delle classi coinvolte, o comunque almeno la parte necessaria. ^^

Rispondi quotando