ITIS ”Divini”
Alessandro Benedetti
Laboratorio di informatica 4
La componente Button
I bottoni vengono creati a partire dalla classe Button. Ogni bottone è contrassegnato da una
scritta.
Esempio: per dichiarare un bottone il cui identificatore è b, contrassegnato dalla scritta
“Calcola” si usa il seguente codice:
private Button b;
…
b = new Button(“Calcola”);
Il bottone creato è cliccabile. Però può essere reso inattivo con il metodo setEnabled.
Esempio:
b.setEnabled(false);
per renderlo di nuovo cliccabile, bisogna sostituire false con true.
I bottoni vengono inseriti nei contenitori come tutte le altre componenti.
L’interfaccia ascoltatore degli eventi provenienti dai bottoni è ActionListener. Pertanto,
se una classe deve gestire gli eventi provenienti da qualche bottone, nella sua intestazione deve
comparire una dichiarazione del tipo implements ActionListener.
L’interfaccia ActionListener ha un solo metodo che si chiama actionPerformed,
che deve essere obbligatoriamente implementato .
Quando si verifica un click su un bottone, si genera un evento della classe ActionEvent.
Per sapere quale bottone è stato cliccato, è necessario usare il metodo
getActionCommand(), che restituisce la stringa rappresentante la scritta che caratterizza il
bottone.
Esempio:
Si disegna un'area con layout BorderLayout; si dispongono: il titolo in alto e 3 bottoni
a sinistra, destra, basso, che controllano il colore del centro; infatti cliccando su uno dei tre
bottoni, cambia il colore dell’area centrale.
Nel listato le istruzioni nuove per la gestione dei bottoni sono scritte in neretto.
Novembre 2008
pag. 1/2
ITIS ”Divini”
Alessandro Benedetti
Laboratorio di informatica 4
/**
* @(#)BottoniColori.java
*
* @author Alessandro Benedetti
* @version 1.00 2008/10/17
*/
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class BottoniColori extends Applet implements ActionListener
{
private BorderLayout bLayout;
private Label titolo;
private Label centro;
private Button butRosso;
private Button butVerde;
private Button butGiallo;
public void init()
{
bLayout = new BorderLayout();
setLayout(bLayout);
butRosso = new Button("Rosso");
butVerde = new Button("Verde");
butGiallo = new Button("Giallo");
titolo = new Label("Bottoni che comandano i colori",Label.CENTER);
centro = new Label("Zona da colorare",Label.CENTER);
centro.setBackground(Color.black);
add(titolo,"North");
add(butRosso,"East");
add(centro,"Center");
add(butGiallo,"West");
add(butVerde,"South");
butRosso.addActionListener(this);
butVerde.addActionListener(this);
butGiallo.addActionListener(this);
}
public void actionPerformed(ActionEvent evento)
{
String bottonePremuto = evento.getActionCommand();
}
if(bottonePremuto.equals("Rosso"))
{
centro.setBackground(Color.red);
}
else if(bottonePremuto.equals("Verde"))
{
centro.setBackground(Color.green);
}
else if(bottonePremuto.equals("Giallo"))
{
centro.setBackground(Color.yellow);
}
}
Novembre 2008
pag. 2/2
Scarica

dispensa - ITIS E. Divini