選項卡面板(JTabbedPane)


今天學習了一下Java中的選項卡面板(JTabbedPane)的相關知識,有許多的好玩之處,也有許多不太懂的地方就去問了問度娘。

一起看看JTabbedPane的有趣故事:

還和以前一樣,從代碼說起。代碼比較長我就直接用圖片展示給大家。

(1)導入相關的包。

  

   這一部分我就不做過多的解釋以及說明,就是Java源代碼中所用到的一些的包。

(2)主函數部分

  這一部分主要就是定義了一些私有的按鈕,以及主函數。主類直接繼承了JFrame面板。主函數直接新建了JTabbedPaneTest 類的對象,並設置對象為可見形式。

(3)JTabbedPaneTest 類的構造方法。

  這一部分是 JTabbedPaneTest 類的無參數的構造方法。

  36~38行:設置窗體的標題、大小以及窗體的關閉方式。

  40~45行:創建內容面板,並且設置其布局為邊界布局(BorderLayout),將選項卡面板放置在內容面板的中間部分。

    40行:新建內容面板對象contentPane。

    41行:新建選項卡面板對象tabbedPane。

    42~45行:設置內容面板 contentPane的布局方式,並將選項卡面板加入到內容面板的中間部分。之后將JFrame窗體中的容器設置為 contentPane。

  47行:調用按鈕初始化函數 buttonInit(),將所有選項卡面板上的按鈕進行初始化。

  48行:調用選項卡面板初始化tabbedPaneInit(),將選項卡面板進行初始化。

  49行:調用監聽函數addListener(),給所有的按鈕添加監聽事件。

(4)按鈕初始化函數 buttonInit()。

 

  54~57行:新建一個單選按鈕面板,其采用表格布局,設置為8行1列,將面板panel放在容器contentPane的左側。

  59~62行:新建一個JLabel 標簽,將其設置為“選項卡方向按鈕”,並更該其字體為微軟雅黑,黑體14號字體。

      調用JLabel包中的setHorizontalTextPosition(int textPosition) 方法,該方法設置標簽的文本相對其圖像的水平位置。

      其參數為:textPosition - SwingConstants 中定義的以下常量之一:LEFTCENTERRIGHTLEADINGTRAILING(默認)。 

  63~79行:這幾行就是設置按鈕的標題以及字體。

      JRadioButton:實現一個單選按鈕,此按鈕項可被選擇或取消選擇,並可為用戶顯示其狀態。與 ButtonGroup 對象配合使用可創建一組按鈕,一次只能選擇其中的一個按鈕。

            (創建一個 ButtonGroup 對象並用其 add 方法將 JRadioButton 對象包含在此組中。) 

      65行:調用setSelected()方法,將“選項卡在頂部”設置為默認選中。

  80~85行:創建一個ButtonGroup 對象,將 rdbtnTop,rdbtnDown,rdbtnLeft,rdbtnRight 按鈕加入到該對象中,保證每一次只能選擇四個按鈕中的一個。

  86~90行:參考59~62行,進行理解。

  91~99行:參考63~79行,進行理解。

  100~103行:參考80~95行,進行理解。

(5)選項卡面板初始化 tabbedPaneInit()。

  該方法中分為三個部分,每一部分都是一樣的,所以只進行一部分的說明。

  118~122行:新建標簽 laLB,並設置其標題以及字體,之后調用JLabel包中的setHorizontalTextPosition(int textPosition) 方法,該方法設置標簽的文本相對其圖像的水平位置。

        最后將該標簽及其組件加入到tabbedPane 面板中。

(6)監聽事件addListener()。

  126~153行:該部分分為4部分,每一部分都實現的是動作監聽器,並且基本類似,故只說明其中一部分。

    147~153行:第4部分,添加了動作監聽器 ActionListener(),實現了其中的 actionPerformed(ActionEvent args) 方法,之后調用選項卡面板中 

          setTabPlacement(int tabPlacement) 方法,設置此選項卡窗格的選項卡布局。可能的值為:

          JTabbedPane.TOPJTabbedPane.BOTTOMJTabbedPane.LEFTJTabbedPane.RIGHT如果未設置,則默認值為 SwingConstants.TOP

  154~167行:該部分分為2部分,每一部分都實現了動作監聽器,但是和上面的四部分有有所不同。

    161~167行:第2部分,添加了動作監聽器ActionListener(),實現了其中的actionPerformed(ActionEvent args)方法,之后調用選項卡面板中

       setTabLayoutPolicy(int tabLayoutPolicy)方法,設置在一次運行中不能放入所有的選項卡時,選項卡窗格使用的對選項卡進行布局安排的策略。可能的值為:
        •    JTabbedPane.WRAP_TAB_LAYOUT
          • JTabbedPane.SCROLL_TAB_LAYOUT,
          如果未通過 UI 進行設置,則默認值為
      JTabbedPane.WRAP_TAB_LAYOUT

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM