Computer >> Máy Tính >  >> Lập trình >> Java

Làm cách nào để đánh dấu tab đã chọn của JTabbedPane trong Java?


A JTabbedPane là một lớp con của JComponent và nó có thể cung cấp khả năng truy cập dễ dàng vào nhiều hơn một bảng điều khiển. Mỗi tab được liên kết với một thành phần duy nhất có thể được hiển thị khi tab được chọn. A JTabbedPane có thể tạo ChangeListener giao diện khi một tab được chọn . Chúng tôi có thể đánh dấu tab đã chọn có màu cụ thể của JTabbedPane bằng cách sử dụng phương thức tĩnh put () của UIManager lớp học.

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); // 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() ;
   }
}

Đầu ra

Làm cách nào để đánh dấu tab đã chọn của JTabbedPane trong Java?