I actually just created an implementation of this myself. :)
Something like that:
final Component someComponent = ...;
final JTabbedPane tabbedPane = new JTabbedPane();
JButton closeButton = new JButton("x");
JPanel titlePanel = ...;
tabbedPane.add(someComponent);
tabbedPane.setTabComponentAt(tabbedPane.indexOfComponent(someComponent), titlePanel);
closeButton.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
tabbedPane.remove(someComponent);
}
});
source
share