當所有選項卡不能位於單次執行中時,如何在 Java 中將 TabLayout 策略設定到 JTabbedPane 中


若要在所有選項卡無法在一個運轉中容納時將 TabLayout 策略設定到 Java 中的 JTabbedPane 中,請使用 setTabLayoutPolicy() 方法 -

JTabbedPane tabbedPane = new JTabbedPane();
tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);

如上所示,我們將常量設定成 SCROLL_TAB_LAYOUT,它是一個選項卡布局策略,用於在所有選項卡不能在單次執行中容納的情況下提供可用選項卡的子集。

以下是一個示例 -

package my;
import javax.swing.*;
import java.awt.*;
import java.awt.event.KeyEvent;
public class SwingDemo {
   public static void main(String args[]) {
      JFrame frame = new JFrame("Devices");
      JTabbedPane tabbedPane = new JTabbedPane();
      JPanel panel1, panel2, panel3, panel4, panel5, panel6, panel7, panel8;
      panel1 = new JPanel();
      panel2 = new JPanel();
      panel3 = new JPanel();
      panel4 = new JPanel();
      panel5 = new JPanel();
      panel6 = new JPanel();
      panel7 = new JPanel();
      panel8 = new JPanel();
      tabbedPane.setBackground(Color.blue);
      tabbedPane.setForeground(Color.white);
      tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
      tabbedPane.addTab("Laptop", panel1);
      tabbedPane.addTab("Desktop ", panel2);
      tabbedPane.addTab("Notebook", panel3);
      tabbedPane.addTab("Echo ", panel4);
      tabbedPane.addTab("Tablet", panel5);
      tabbedPane.addTab("Alexa ", panel6);
      tabbedPane.addTab("Notebook", panel7);
      tabbedPane.addTab("iPad", panel8);
      frame.add(tabbedPane);
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(500,350);
      frame.setVisible(true);
   }
}

輸出如下所示。現在您可以看到所有選項卡都無法容納,因此一個導航可見用於在右側顯示所有其他選項卡 -

現在,當您單擊右側導航時,所有其他選項卡都將可見 -

更新於: 2019 年 7 月 30 日

316 次瀏覽

開啟你的 職業生涯

完成課程認證

開始
廣告
© . All rights reserved.