JTabbedPane là một lớp con của JComponent cung cấp truy cập dễ dàng đến nhiều panel. Mỗi tab liên kết với một thành phần đơn hiển thị khi tab được chọn. JTabbedPane tạo ra ChangeListener khi tab được chọn. Chúng ta có thể làm nổi bật tab được chọn với màu cụ thể của JTabbedPane bằng phương thức static put() của UIManager.
Ví dụ
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); // Đặt màu tab được chọn thành xám
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();
}
}
Kết quả
