JTabbedPane mit Button zum Hinzufügen eines neuen Tabs

Flotrix

Mitglied
Hey,

ich möchte gerne in meiner JTabbedPane, wie man es aus jeglichen Browsern kennt, einen Button zum Hinzufügen eines neuen Tab hinbekommen. Hat jemand vlt. eine bessere Idee als einem Tab mit einem KlickListener zu versehen und hier dann immer eine neue Seite zu erzeugen?

MFG
 
Dachte es gebe noch andere Möglichkeiten. Derzeit scheitere ich an dem Hinzufügen des Listeners für den einen Tab :/ Wenn jemand mir einen kleinen Startschuss geben kann, wäre ich sehr dankbar 🙂
 
hab eben schnell was kleines runtergeschrieben woran man aber denke ich mein Problem erkennen kann

Java:
public class test extends JFrame {
	private JPanel panel;
	private JTabbedPane tabbedPane;
	private JPanel panel_1;
	private JPanel panel_2;
	test(){
		
		panel = new JPanel();
		getContentPane().add(panel, BorderLayout.CENTER);
		
		tabbedPane = new JTabbedPane(JTabbedPane.TOP);
		tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
		panel.add(tabbedPane);
		
		panel_1 = new JPanel();
		tabbedPane.addTab("+", null, panel_1, null);
		// HInzufügen eines Listener auf diesen Tab der bei Mouseklick folgenden Code ausführt
		//JPanel bob = new JPanel();
		//tabbedPane.addTab("new", bob);
		
		panel_2 = new JPanel();
		panel_2.add(new JLabel("Hallofasskldfklsdaklfklsdklafklsakl"));
		tabbedPane.addTab("New tab", null, panel_2, null);
		pack();
		setVisible(true);
		
	}
	
	public static void main(String[] args) {
		new test();
	}
}
 
Okay ist ja am Ende doch einfacher als erwartet gewesen. Stelle trotzdem mal meine Lösung hier rein 🙂

Java:
tabbedPane.addChangeListener(new ChangeListener() {
	public void stateChanged(ChangeEvent arg0) {
		if (tabbedPane.getSelectedIndex() == 0) {
			JPanel bob = new JPanel();
			tabbedPane.addTab("new", bob);
			tabbedPane.setSelectedIndex(tabbedPane.getTabCount()-1);
		}
	}
});

Vielen Dank 🙂
 

Zurück
Oben