Το στοιχείο JRadioButton
Το στοίχειο JRadioButton
το χρησιμοποιώ σε ένα σύνολο επιλογών όπου ο χρήστης καλείται να επιλέξει μία μόνο επιλογή από τις πολλές.
Για να ισχύει το παραπάνω πρέπει τα κουμπιά να ανήκουν σε μια ομάδα (group) έτσι ώστε όταν επιλέγεται κάποιο κουμπί να αποεπιλέγεται αυτόματα το προηγούμενο επιλεγμένο.
Για να προσθέσω αντικείμενα JRadioButton
σε ένα παράθυρο ακολουθώ (όπως σχεδόν σε όλα τα στοιχεία) τρία βασικά βήματα. Πρώτα δημιουργώ το αντικείμενο, μετά του δίνω τα χαρακτηριστικά που θέλω να έχει και τέλος το τοποθετώ επάνω στο παράθυρο.
Η θέση του στο παράθυρο εξαρτάται από το Layout του παραθύρου. Στα παραδείγματα που ακολουθούν χρησιμοποιούμε το setLayout(null);
Αυτό σημαίνει ότι όταν τοποθετώ το στοιχείο θα πρέπει να δώσω θέση (συντεταγμένες x και y) και διαστάσεις (πλάτος και ύψος). Αυτό γίνεται με την εντολή setBounds(x, y, width, height);
.
import javax.swing.*; class App extends JFrame { public App() { //Δημιουργία αντικειμένων JRadioButton smallButton = new JRadioButton("Small"); // προσθέτω και την ετικέτα JRadioButton mediumButton = new JRadioButton("Medium"); // προσθέτω και την ετικέτα JRadioButton largeButton = new JRadioButton("Large"); // προσθέτω και την ετικέτα //ορισμός χαρακτηριστικών smallButton.setBounds(0, 0, 100, 25); mediumButton.setBounds(0, 30, 100, 25); largeButton.setBounds(0, 60, 100, 25); smallButton.setSelected(true); //ορίζω ως προεπιλεγμένο το smallButton //Δημιουργώ την ομάδα (group) στην οποία θα ανήκουν τα παραπάνω κουμπιά. ButtonGroup group = new ButtonGroup(); group.add(smallButton); group.add(mediumButton); group.add(largeButton); //πρόσθεση αντικειμένων στο παράθυρο με την εντολή add. add(smallButton); add(mediumButton); add(largeButton); } public static void main(String[] args) { App frame = new App(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300, 200); frame.setTitle("my first application"); frame.setLayout(null); //ορισμός layout frame.setVisible(true); } }