|
HOME |
FORUM |
INDICE |
CheckRadioEsempio.java
|
/*
L'esempio mostra l'utilizzo del controllo Checkbox.
Autore: Agosto 2009, Giovanni Iacobelli - http://www.iacosoft.com
*/
import java.awt.*;
import java.awt.event.*;
class CheckRadioEsempio extends Frame
{
Label msg_reddito= new Label("REDDITO (Euro): ", Label.LEFT);
Label msg_hobby= new Label("HOBBIES: ", Label.LEFT);
/*
crea l'insieme dei controlli di tipo Checkbox
a scelta esclusiva (Radio Option).
L'associazione al gruppo reddito, istanza della
classe CheckboxGroup, trasforma i Checkbox in Radio Option.
*/
CheckboxGroup reddito= new CheckboxGroup();
Checkbox r1= new Checkbox("0-10.000", true, reddito);
Checkbox r2= new Checkbox("10.000-20.000", false, reddito);
Checkbox r3= new Checkbox("20.000-30.000", false, reddito);
Checkbox r4= new Checkbox("Oltre 30.000", false, reddito);
//insieme dei controlli Checkbox
Checkbox h1= new Checkbox("Lettura");
Checkbox h2= new Checkbox("Musica");
Checkbox h3= new Checkbox("Computer");
Checkbox h4= new Checkbox("Pesca");
CheckRadioEsempio ObjMain;
//costruttore della classe
public CheckRadioEsempio()
{
//aggiunge il gestore degli eventi alla finestra
addWindowListener(new GestoreWindow());
ObjMain= this;
/*
viene creato il pannello che conterrā
i Radio Option
*/
Panel con_red= new Panel();
con_red.add(msg_reddito);
con_red.add(r1);
con_red.add(r2);
con_red.add(r3);
con_red.add(r4);
//il pannello č aggiunto nella zona alta della finestra
add(con_red, BorderLayout.NORTH);
/*
viene creato il pannello che conterrā
i CheckBok
*/
Panel con_hob= new Panel();
con_hob.add(msg_hobby);
con_hob.add(h1);
con_hob.add(h2);
con_hob.add(h3);
con_hob.add(h4);
//il pannello č aggiunto nella zona centrale della finestra
add(con_hob, BorderLayout.CENTER);
}
/*
genera una stringa descrittiva relativa all'input dell'utente
*/
public String Resoconto()
{
String ris= msg_reddito.getText() + " ";
if (r1.getState())
{
ris += r1.getLabel();
}
if (r2.getState())
{
ris += r2.getLabel();
}
if (r3.getState())
{
ris += r3.getLabel();
}
if (r4.getState())
{
ris += r4.getLabel();
}
ris += "\n" + msg_hobby.getText();
if (h1.getState())
{
ris += " " + h1.getLabel();
}
if (h2.getState())
{
ris += " " + h2.getLabel();
}
if (h3.getState())
{
ris += " " + h3.getLabel();
}
if (h4.getState())
{
ris += " " + h4.getLabel();
}
return ris;
}
//override del metodo ereditato
public String toString()
{
return Resoconto();
}
//punto d'ingresso dell'applicazione
public static void main(String[] args)
{
CheckRadioEsempio obj= new CheckRadioEsempio();
//imposta la posizione della finestra
obj.setLocation(100,100);
//imposta la dimensione della finestra
obj.setSize(600,200);
//imposta il titolo della finestra
obj.setTitle("Test Check e Radio button");
//rende visibile la finestra
obj.show();
}
//gestore degli eventi della finestra
class GestoreWindow implements WindowListener
{
public void windowDeactivated(WindowEvent e)
{}
public void windowClosed(WindowEvent e)
{}
public void windowActivated(WindowEvent e)
{}
public void windowDeiconified(WindowEvent e)
{}
public void windowIconified(WindowEvent e)
{}
public void windowClosing(WindowEvent e)
{
/*
visualizza nella console la stringa
descrittiva delle scelte dell'utente
*/
System.out.println(ObjMain);
Window f= e.getWindow();
f.dispose();
}
public void windowOpened(WindowEvent e)
{}
}
}
|
|