From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- .../hjp5/examples/Listing3708.java | 44 ++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 Master/Reference Architectures and Patterns/hjp5/examples/Listing3708.java (limited to 'Master/Reference Architectures and Patterns/hjp5/examples/Listing3708.java') diff --git a/Master/Reference Architectures and Patterns/hjp5/examples/Listing3708.java b/Master/Reference Architectures and Patterns/hjp5/examples/Listing3708.java new file mode 100644 index 0000000..3151b3d --- /dev/null +++ b/Master/Reference Architectures and Patterns/hjp5/examples/Listing3708.java @@ -0,0 +1,44 @@ +/* Listing3708.java */ + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +import javax.swing.event.*; + +public class Listing3708 +extends JFrame +implements ItemListener +{ + public Listing3708() + { + super("JCheckBox"); + addWindowListener(new WindowClosingAdapter(true)); + JPanel panel = new JPanel(); + panel.setLayout(new GridLayout(3, 1)); + for (int i = 1; i <= 3; ++i) { + JCheckBox cb = new JCheckBox("Checkbox" + i, i == 2); + cb.addItemListener(this); + panel.add(cb); + } + getContentPane().add(panel, BorderLayout.CENTER); + } + + public void itemStateChanged(ItemEvent e) + { + JCheckBox cb = (JCheckBox)e.getSource(); + int change = e.getStateChange(); + if (change == ItemEvent.SELECTED) { + System.out.println(cb.getText() + ": SELECTED"); + } else if (change == ItemEvent.DESELECTED) { + System.out.println(cb.getText() + ": DESELECTED"); + } + } + + public static void main(String[] args) + { + Listing3708 frame = new Listing3708(); + frame.setLocation(100, 100); + frame.setSize(300, 100); + frame.setVisible(true); + } +} \ No newline at end of file -- cgit v1.2.3