• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
Checkbox e radio button
In questa dispensa saranno presentati ulteriori componenti dell'interfaccia utentedefiniti nel package javax.swing. In particolare ci occuperemo di:
caselle di controllo (JCheckBox);
pulsanti di opzione (JRadioButton);
gruppi di pulsanti di opzione (ButtonGroup).Prima di analizzare le funzionalità dei diversi componenti, vediamo come questi sicollocano nella gerarchia delle classi di Java.
Object
ButtonGroup
ComponentContainer JComponentJToggleButton
JCheckBox JRadioButton
AbstractButton
Caselle di controllo: la classe JCheckBox
Le caselle di controllo (JCheckBox) sono pulsanti di stato che permettono all'utente diesprimere una scelta di tipo vero/falso, si/no.Ogni casella di controllo ha
uno
stato
che può assumere valore:
true
, se la casella è selezionata;
false
altrimenti.
un'
etichetta
, che la identifica.
Bocchi CinziaUltimo aggiornamento: 25/10/20111
 
Una casella di controllo ha la forma di un piccolo quadrato, con un eventuale segno dispunta all'interno, qualora sia selezionata, come si può vedere nella figura seguente.
Fig. 1 Frame con caselle di controllo
Per attivare una casella di controllo, l'utente può utilizzare il mouse oppure la barraspaziatrice (quando la casella ha il focus).
Costruttori della classe JCheckBox
public
 JCheckBox
()Crea una casella di controllo con stato
false
.
public
 JCheckBox
(String
 
etichetta
)Crea una casella di controllo con l'etichetta specificata e stato
false
.
public
 JCheckBox
(Icon
 
icona
)Crea una casella di controllo con l'icona specificata e stato
false
.
public
 JCheckBox
(String
etichetta
, boolean
stato
)Crea una casella di controllo con l'etichetta e lo stato specificati.
public
 JCheckBox
(Icon
icona
, boolean
stato
)Crea una casella di controllo con l'icona e lo stato specificati.
public
 JCheckBox
(String
etichetta
, Icon
icona
)Crea una casella di controllo con l'etichetta e l'icona specificati e stato
false
.
public
 JCheckBox
(String
etichetta
, Icon
icona
, boolean
stato
)Crea una casella di controllo con l'etichetta, l'icona e lo stato specificati.
Metodi utili ereditati dalla classe AbstractButton
public
 
String
 getText
()
 
Restituisce l'etichetta della casella di controllo.
public void
setText
(String
etichetta
)Imposta l'etichetta della casella di controllo al valore passato come parametro.
public boolean
isSelected
()
Bocchi CinziaUltimo aggiornamento: 25/10/20112
 
Restituisce lo stato della casella di controllo.
public void
setSelected
(boolean
stato
)Imposta lo stato della casella di controllo al valore specificato.
public void
doClick
()Realizza un clic, cioè ha lo stesso effetto di un clic eseguito dall'utente.
public Icon
getIcon
()Restituisce l'icona della casella di controllo.
public void
setIcon
(Icon
icona
)Imposta l'icona della casella di controllo al valore passato come parametro.
public void
setEnabled
(boolean
b
)Abilita (se b è
true
) o disabilita (se b è
false
) la casella di controllo. Ridefinisce(override) il metodo setEnabled della classe JComponent.
public Object[]
getSelectedObjects
()Restituisce un array di oggetti, di dimensione 1, contenente:
 – 
l'etichetta del pulsante, se esso è selezionato;
 – 
null 
altrimenti.
Eventi generati da una JCheckBox
Quando una checkbox viene selezionata, facendo clic su di essa, si genera sia unevento Item che un evento Action.
Esempio
Il seguente codice crea una GUI uguale a quella illustrata nella figura 1. Il framecontiene due pannelli:
 – 
un pannello centrale che riporta la frase "Modifica lo stile del testo";
 – 
un pannello a sud, che contiene le due caselle di controllo.La stringa presente nel pannello centrale acquisisce lo stile impostato con le checkbox.
import
java.awt.BorderLayout;
import
java.awt.Container;
import
java.awt.Font;
import
java.awt.event.ItemEvent;
import
java.awt.event.ItemListener;
import
javax.swing.JCheckBox;
import
javax.swing.JFrame;
import
javax.swing.JLabel;
import
javax.swing.JPanel;
import
javax.swing.SwingConstants;
 public
 
class
UseCheckBoxFrame
extends
JFrame {
 private
JPanelsouthPane=
null
;
Bocchi CinziaUltimo aggiornamento: 25/10/20113
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...