NOTA! Questo sito utilizza i cookie e tecnologie simili.

Se non si modificano le impostazioni del browser, l'utente accetta. Per saperne di piu'

Approvo

Guida Java 2D - Capitolo 29: Elementi della GUI di alto livello, strumenti per selezioni e scelte: JRadioButton.

 

JRadioButton

I JRadioButton servono ad implementare gruppi di pulsanti a scelta mutuamente esclusiva: la selezione di una opzione esclude automaticamente le altre (a livello visivo, le altre caselle verranno deselezionate automaticamente).

 

Le componenti vengono raffigurate, visivamente, mediante caselle selezionabili di forma circolare, per distinguerle dalle CheckBox (quadrate).

 

La definizione di un gruppo di JRadioButton va fatta, però, in due fasi:

  • prima bisogna inserire gli oggetti JRadioButton;
  • poi bisogna associarli ad un ButtonGroup, che li collega a livello logico: solo dopo aver effettuato questa operazione la scelta diverrà mutuamente esclusiva.

 

 

Per prima cosa, quindi, dobbiamo creare uno o più JRadioButton.

 

Costruttori di JRadioButton:

  • JRadioButton(String etichetta);

  • JRadioButton(String etichetta, boolean stato);

  • JRadioButton(String etichetta, Icon icona); .

 

Metodi utili:

isSelected()   :   boolean Restituisce lo stato della casella (true se selezionata, false altrimenti).
setSelected(boolean b)   :   void Seleziona (se b è true) o deseleziona (se b è false) la casella.

 

La selezione di un JRadioButton lancia un evento ActionEvent, intercettabile con il listener ActionListener, che richiede l'implementazione di un metodo:

actionPerformed(ActionEvent e)   :   void .

 

A questo punto possiamo definire un gruppo 'logico' per i JRadioButton; un tale oggetto si chiama ButtonGroup ed ha per costruttore:

  • ButtonGroup() .

 

Il metodo che permette di aggiungere a livello LOGICO un radio button ad un gruppo ha firma:

  • add(JRadioButton b)   :   void

mentre per l'operazione inversa (rimozione logica) potremo utilizzare il metodo:

  • remove(AbstractButton b)   :   void

 

Da notare che un gruppo ButtonGroup non produce risultati a livello visivo: non vedremo i JRadioButton all'interno di un pannello o raggruppati in qualche modo; si consiglia, quindi, di creare un JPanel munito di bordi e/o di etichetta 'ad hoc' per i gruppi di JRadioButton logicamente connessi tra loro, in modo da far intuire all'utente che la scelta, per quelle caselle, è mutuamente esclusiva.

 

 
Vai all'inizio della pagina