No encuentro el error en la siguiente aplicacion.
Código:
al pulsar un boton debe de mostrar un texto en la parte inferior indicando el boton que se ha pulsado.import java.awt.GridLayout; import java.awt.*; import java.awt.event.*; import javax.swing.*; class ButtonDemo1 extends JPanel implements ActionListener { /*línea 12: declaras las variables objeto b1, b2 de tipo JButton */ JButton b1, b2; JLabel E1; public ButtonDemo1() { setLayout( new GridLayout(2,1) ); JLabel E1 = new JLabel(); E1.setText("Presionó el botón "); /*Crear los botones y establece su posicion */ b1 = new JButton("Botón 1"); b1.setVerticalTextPosition(AbstractButton.CENTER); b1.setHorizontalTextPosition(AbstractButton.LEFT); b1.setMnemonic(KeyEvent.VK_1); b1.setActionCommand("disable"); b2 = new JButton("Botón 2"); b2.setVerticalTextPosition(AbstractButton.BOTTOM); b2.setHorizontalTextPosition(AbstractButton.CENTER); b2.setMnemonic(KeyEvent.VK_2); /*Agrega al objeto b1,b2 a la lista de ActionListener()*/ b1.addActionListener(this); b2.addActionListener(this); /*El métodod add () agrega los botones al contenedor,*/ add(b1); add(b2); add(E1); } public void actionPerformed(ActionEvent e) { if (e.getActionCommand().equals("disable")) { E1.setText("Presionó el botón 1"); } else { E1.setText("Presionó el botón 2"); } } /*línea 122: defines el método principal main*/ public static void main(String[] args) { /*línea 125:con el operador new creas el objeto marco de tipo JFrame*/ JFrame marco = new JFrame("Ejercicios con botones"); marco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); marco.getContentPane().add(new ButtonDemo1(), BorderLayout.CENTER); marco.pack(); marco.setLocation(200,200); marco.setVisible(true); } }
Gracias y espero su ayuda urgente