A JTabbedPane is a subclass of JComponent class and it can provide easy access to more than one panel. Each tab is associated with a single component that can be displayed when the tab is selected. A JTabbedPane can generate a ChangeListener interface when a tab is selected. We can highlight a selected tab with a particular color of a JTabbedPane by using the static method put() of the UIManager class.
Example
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SelectedJTabbedPaneTest extends JFrame implements ActionListener { private JTabbedPane tabbedPane; int tab = 0; public SelectedJTabbedPaneTest() { setTitle("SelectedJTabbedPane Test"); setLayout(new BorderLayout()); UIManager.put("TabbedPane.selected", Color.gray); // set the color of selected tab to gray tabbedPane = new JTabbedPane(); createTab(); add(tabbedPane, BorderLayout.CENTER); setJMenuBar(createMenuBar()); setSize(375, 250); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); } public JMenuBar createMenuBar() { JMenuBar menuBar = new JMenuBar(); JMenu menu = new JMenu("JTabbedPane"); JMenuItem menuItem = new JMenuItem("Create a new tab"); menuItem.addActionListener(this); menu.add(menuItem); menuBar.add(menu); return menuBar; } public void actionPerformed(ActionEvent ae) { if (ae.getActionCommand().equals("Create a new tab")) { createTab(); } } public void createTab() { tab++; tabbedPane.addTab("Tab " + tab, new JLabel("Tab " + tab)); } public static void main(String []args) { new SelectedJTabbedPaneTest() ; } }