Pessoal,
estou com uma dúvida com relação ao uso do ActionListener.
Meu professor, num dado momento, quando criou um simples Frame, adicionou um botão que tinha uma determinada função. E para isso, ele escreveu o seguinte código, sendo que o botão estava no próprio Frame:
[code]
btn = new JButton(“Click Me!”);
btn.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
textArea.append("Hello\n");
}
});[/code]
E quando o exemplo foi ficando mais elaborado, ele adicionou um Toolbar, e colocou 2 botões dentro do Toolbar, porém, ele utilizou o ActionListener de maneira diferente, que eu não entendo o porquê. Poderia alguém me explicar por favor?
Obrigado.
Segue o 2º Código:
[code]
public Toolbar(){
helloButton = new JButton(“Hello”);
goodbyeButton = new JButton(“GoodBye”);
setLayout (new FlowLayout(FlowLayout.LEFT));
add(helloButton);
add(goodbyeButton);
helloButton.addActionListener(this);
goodbyeButton.addActionListener(this);
}
public void setTextPanel(TextPanel textPanel){
this.textPanel = textPanel;
}
@Override
public void actionPerformed(ActionEvent e) {
JButton clicked= (JButton)e.getSource();
if (clicked == helloButton){
textPanel.appendText("Hello\n");
}else if(clicked == goodbyeButton){
textPanel.appendText("GoodBye\n");
}
}
}[/code]