- Testo
- Il testo dell'esempio è componenti.java
import java.awt.*;
import java.applet.Applet;
import java.io.*;
import java.net.*;
public class componenti extends Applet {
Button bottone;
Label label;
Checkbox checkbox;
Checkbox check1;
Checkbox check2;
CheckboxGroup checkGroup;
Choice choice;
List list;
TextField field;
TextArea textArea;
Scrollbar scrollbar;
public void init () {
setBackground (Color.white); // Sfondo applet
setLayout (new BorderLayout ()); // Layout con le cinque posizioni
Panel np = new Panel (); // Pannello (un'area)
np.setLayout (new GridLayout (3,1)); // Griglia di una colonna con tre righe
// Prima Riga
label = new Label ("Label"); // Occupa tutta la prima riga
np.add (label);
// Seconda Riga
Panel np1 = new Panel (); // La seconda riga e' un'altro pannello
np1.setLayout (new FlowLayout ()); // Questo mette gli elementi in fila
checkbox = new Checkbox ("Checkbox");
checkbox.setBackground (Color.white);
np1.add (checkbox);
checkGroup = new CheckboxGroup (); // Radio button - raggruppati - uno spegne l'altro
check1 = new Checkbox ("Scelta1", checkGroup, false);
check1.setBackground (Color.white);
np1.add (check1);
check2 = new Checkbox ("Scelta2", checkGroup, false);
check2.setBackground (Color.white);
np1.add (check2);
np.add (np1);
// Terza Riga
Panel np2 = new Panel (); // Ancora un pannello
np2.setLayout (new GridLayout (1,3)); // Una riga e tre colonne
field = new TextField (20);
np2.add (field); // Prima colonna
choice = new Choice ();
choice.addItem("one");
choice.addItem("two");
choice.addItem("three");
choice.addItem("four");
np2.add (choice); // Seconda colonna
scrollbar = new Scrollbar (Scrollbar.HORIZONTAL,0,10,0,100);
np2.add (scrollbar); // Terza colonna
np.add (np2); // Aggiungo questo panel, nella terza riga
add ("North",np); // Aggiungo la griglia di tre righe a nord dell'applet
list = new List (4,false);
list.addItem("uno");
list.addItem("due");
list.addItem("tre");
list.addItem("quattro");
list.addItem("cinque");
list.addItem("sei");
add ("East",list); // Aggiungo la lista a est (destra) nell'applet
textArea = new TextArea(4, 50);
textArea.setEditable(false);
add ("West", textArea); // Aggiungo l'area di testo a ovest (sinistra) nell'applet
Panel sp = new Panel (); // Un ultimo pannello
sp.setLayout (new FlowLayout ()); // Che mette i compoinenti uno in fianco all'altro
bottone = new Button ("Bottone");
sp.add (bottone); // Aggiungo il bottone al pannello -
//avra' la sua dimensione naturale
add ("South",sp); // Metto il pannello con il bottone a sud dell'applet
}
// Gestione ScrollBar
public boolean handleEvent(Event evt) {
switch (evt.id) { // Per ogni movimento della scroll bar
case Event.SCROLL_LINE_UP:
case Event.SCROLL_LINE_DOWN:
case Event.SCROLL_PAGE_UP:
case Event.SCROLL_PAGE_DOWN:
case Event.SCROLL_ABSOLUTE:
textArea.appendText ("Scroll Bar a " + // Aggiungo un messaggio nell'area di testo
String.valueOf (scrollbar.getValue ()) + "\n");
break;
}
return super.handleEvent(evt); // Faccio comunque gestire gli eventi all'handler di Applet (la superclasse)
}
// Gestione di tutti i bottoni (normali, check e radio)
public boolean action(Event event, Object arg) {
if (event.target == bottone) {
textArea.setText (""); // Il bottone cancella il testo nell'area
} else if (event.target == checkbox) {
textArea.appendText ("Checkbox e' " + ((checkbox.getState()) ? "On" :
"off") + "\n"); // Indico nella textarea lo stato cel check box
} else if (event.target == check1) {
if (check1.getState()) {
textArea.appendText ("Seleziono Scelta1\n");
}
} else if (event.target == check2) {
if (check2.getState()) {
textArea.appendText ("Seleziono Scelta2\n");
}
} else if (event.target == choice) {
textArea.appendText ("Si e' scelto '" + choice.getSelectedItem() + "'\n");
} else if (event.target == list) {
textArea.appendText ("Si e' scelto '" + list.getSelectedItem() +
"' dalla lista\n");
} else if (event.target == field) {
textArea.appendText ("'" + field.getText () + "'\n");
}
return true;
}
}
|