Paulo Borba
Centro de Informática
Universidade Federal de Pernambuco
Recife, 13 de fevereiro de 2003
Considere a seguinte classe definida em Java:
class GUI extends Frame implements ActionListener {
private Button botaoAcao, botaoSaida;
private TextField campo;
public GUI () {
botaoAcao = new Button("Ação!");
botaoSaida = new Button("Sair");
campo = new TextField(" ");...
this.add(botaoAcao);
this.add(botaoSaida); this.add(campo);
this.setLayout(new FlowLayout());
this.setSize(new Dimension(302, 221)); this.show();
}...
}
Complemente a classe e o construtor acima com o código necessário para que qualquer objeto da classe GUI seja notificado quando alguém clicar nos seus botões. Quando notificado, este objeto deve escrever "Ação!" no campo de texto campo, caso o botão clicado tenha sido botaoAcao, ou então terminar a aplicação, caso o botão clicado tenha sido botaoSaida. Lembre que todo botão tem o método addActionListener, que recebe um parâmetro da interface abaixo, implementada por GUI. O método System.exit pode ser usado para terminar a aplicação, enquanto que setText pode ser usado para escrever em um campo de texto. O objeto fonte (origem) de um evento como ActionEvent pode ser obtido com o método getSource.
public interface ActionListener extends EventListener {
public void actionPerformed(ActionEvent e);
}