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/Listing3803.java | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 Master/Reference Architectures and Patterns/hjp5/examples/Listing3803.java (limited to 'Master/Reference Architectures and Patterns/hjp5/examples/Listing3803.java') diff --git a/Master/Reference Architectures and Patterns/hjp5/examples/Listing3803.java b/Master/Reference Architectures and Patterns/hjp5/examples/Listing3803.java new file mode 100644 index 0000000..ff162c4 --- /dev/null +++ b/Master/Reference Architectures and Patterns/hjp5/examples/Listing3803.java @@ -0,0 +1,47 @@ +/* Listing3803.java */ + +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; + +public class Listing3803 +extends JFrame +{ + JTabbedPane tp; + + public Listing3803() + { + super("JTabbedPane"); + addWindowListener(new WindowClosingAdapter(true)); + tp = new JTabbedPane(); + for (int i = 0; i < 5; ++i) { + JPanel panel = new JPanel(); + panel.add(new JLabel("Karte " + i)); + JButton next = new JButton("Weiter"); + next.addActionListener(new NextTabActionListener()); + panel.add(next); + tp.addTab("Tab" + i, panel); + } + getContentPane().add(tp, BorderLayout.CENTER); + } + + class NextTabActionListener + implements ActionListener + { + public void actionPerformed(ActionEvent event) + { + int tab = tp.getSelectedIndex(); + tab = (tab >= tp.getTabCount() - 1 ? 0 : tab + 1); + tp.setSelectedIndex(tab); + ((JPanel)tp.getSelectedComponent()).requestDefaultFocus(); + } + } + + public static void main(String[] args) + { + Listing3803 frame = new Listing3803(); + frame.setLocation(100, 100); + frame.setSize(300, 200); + frame.setVisible(true); + } +} \ No newline at end of file -- cgit v1.2.3