I have a JTabbedPane and I am trying to figure out how to code it so that when closing the current tab, the last active tab is focused. I have some methods as below but they do not work as when closing, the stateChange method is called. Does anyone know how to code this and have it be n levels deep, not just one?
Code:
frame.tabbedPane.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
previousTab = currentTab;
currentTab = frame.tabbedPane.getSelectedIndex();
System.out.println("old: " + previousTab);
System.out.println("current: " + currentTab);
}
});
public static void closeTab(JFrame frame1) {
Component c = frame1.tabbedPane.getSelectedComponent();
if( c != null ){
frame1.tabbedPane.remove(c);
System.out.println("Setting tab: " + previousTab);
frame.tabbedPane.setSelectedIndex(previousTab);
currentTab = frame.tabbedPane.getSelectedIndex();
}
}