import java.awt.*; import java.awt.event.*; public class Fenster9_Checkboxen_und_Radioboxen { public static void main(String[] args) { Frame f = new Frame("Ein Popup-Menü"); Checkbox c1 = new Checkbox("Erster Eintrag"); Checkbox c2 = new Checkbox("Zweiter Eintrag"); Checkbox c3 = new Checkbox("Dritter Eintrag"); // Problem: // Die Checkboxen schieben sich ÜBEREINANDER, // wenn wir nicht angeben, WO sie erscheinen sollen // Lösung: Dem Fenster ein "null"-Layout geben, und die Position // der Elemente in Koordinaten angeben f.setLayout(null); // Frei positionierbare Elemende c1.setBounds(10,20,200,15); // Position und Größe angeben c2.setBounds(10,35,200,15); // Position und Größe angeben c3.setBounds(10,50,200,15); // Position und Größe angeben f.add(c1); // Dem Fenster hinzufügen f.add(c2); // Dem Fenster hinzufügen f.add(c3); // Dem Fenster hinzufügen CheckboxGroup radio = new CheckboxGroup(); // Drei voneinander ABHÄNGIGE (Mitglieder von CheckboxGroup radio, // true) Checkboxen Checkbox c4 = new Checkbox("Erster Radio-Eintrag", radio, true); Checkbox c5 = new Checkbox("Zweiter Radio-Eintrag", radio, true); Checkbox c6 = new Checkbox("Dritter Radio-Eintrag", radio, true); c4.setBounds(210,20,150,15); // Position und Größe angeben c5.setBounds(210,35,150,15); // Position und Größe angeben c6.setBounds(210,50,150,15); // Position und Größe angeben f.add(c4); // Dem Fenster hinzufügen f.add(c5); // Dem Fenster hinzufügen f.add(c6); // Dem Fenster hinzufügen f.setSize(400,100); f.setVisible(true); // Jetzt die Events ItemListener aktion = new ItemListener(){ public void itemStateChanged(ItemEvent e){ System.out.println("Event!"); System.out.println("Es wurde ausgewählt: "); // getItem() aus dem Event liefert das gewählte Element System.out.println(e.getItem()); } }; c1.addItemListener(aktion); // Mit Checkbox verbinden c2.addItemListener(aktion); // Mit Checkbox verbinden c3.addItemListener(aktion); // Mit Checkbox verbinden c4.addItemListener(aktion); // Mit Checkbox verbinden c5.addItemListener(aktion); // Mit Checkbox verbinden c6.addItemListener(aktion); // Mit Checkbox verbinden // Schließen-Aktion fürs Fenster WindowAdapter w = new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.out.println("Programmende durch Schließen-Knopf"); System.exit(0); } }; f.addWindowListener(w); } }