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

Làm cách nào chúng ta có thể chèn nhiều tab vào một JTabbedPane trong Java?

JTabbedPane

  • A JTabbedPane là một thành phần có thể mở rộng JComponent và chúng ta có thể xem từng tab tại một thời điểm.
  • 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 khi một tab được chọn.
  • Cũng có thể chèn nhiều tab vào một JTabbedPane và các phương thức quan trọng của JTabbedPane là addTab (), fireStateChanged (), getTabPlacement (), setSelectedIndex (), getTabCount () và v.v.

Ví dụ

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class NestedJTabbedPaneTest extends JFrame {
   public NestedJTabbedPaneTest() {
      setTitle("Nested JTabbedPane test");
      setLayout(new BorderLayout());
      JTabbedPane tabbedPane = new JTabbedPane();
      add(BorderLayout.CENTER, tabbedPane);
      createNestedTab(tabbedPane, 1);
      setSize(375, 250);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLoc*ationRelativeTo(null);
      setVisible(true);
   }
   protected void createNestedTab(JTabbedPane jtp, int count) {
      if (count > 5) return;
      JTabbedPane tp = new JTabbedPane();
      tp.setTabPlacement(getNextOrientation(jtp.getTabPlacement()));
      jtp.addTab("Tab #" + count, tp);
      createNestedTab(tp, count+1);
   }
   private int getNextOrientation(int tabPlacement) {
      if (tabPlacement == JTabbedPane.TOP) return JTabbedPane.RIGHT;
      if (tabPlacement == JTabbedPane.RIGHT) return JTabbedPane.BOTTOM;
      if (tabPlacement == JTabbedPane.BOTTOM) return JTabbedPane.LEFT;
      else return JTabbedPane.TOP;
   }
   public static void main(String []args) {
      new NestedJTabbedPaneTest();
   }
}

Đầu ra

Làm cách nào chúng ta có thể chèn nhiều tab vào một JTabbedPane trong Java?