91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

swing組件是什么

發布時間:2020-10-30 17:03:55 來源:億速云 閱讀:187 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關swing組件是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

 Swing 是 Java 為圖形界面應用開發提供的一組工具包,是 Java 基礎類的一部分。

Swing 包含了構建圖形界面(GUI)的各種組件,如: 窗口、標簽、按鈕、文本框等。

Swing 提供了許多比 AWT 更好的屏幕顯示元素,使用純 Java 實現,能夠更好的兼容跨平臺運行。

為了和 AWT 組件區分,Swing 組件在javax.swing.*包下,類名均以 J 開頭,例如: JFrame、JLabel、JButton等。

推薦課程:Java教程。

Swing組件

一個 Java 的圖形界面,由各種不同類型的“元素”組成,例如: 窗口、菜單欄、對話框、標簽、按鈕、文本框等等,這些“元素”統一被稱為 組件(Component)。

組件按照不同的功能,可分為 頂層容器、中間容器、基本組件。一個簡單窗口的組成,如下層級結構所示:

頂層容器

菜單欄

中間容器

基本組件

基本組件

組件類型的繼承關系:

頂層容器 屬于窗口類組件,繼承自java.awt.Window;

中間容器 和 基本組件 繼承自javax.swing.JComponent。

(1)頂層容器

頂層容器屬于窗口類組件,可以獨立顯示,一個圖形界面至少需要一個窗口,例如:

#
組件
描述
1
JFrame
一個普通的窗口(絕大多數 Swing 圖形界面程序使用 JFrame 作為頂層容器)
2
JDialog
對話框

(2)中間容器

中間容器充當基本組件的載體,不可獨立顯示。中間容器可以添加若干基本組件(也可以嵌套添加中間容器),對容器內的組件進行管理,類似于給各種復雜的組件進行分組管理。最頂層的一個中間容器必須依托在頂層容器(窗口)內。

常用的中間容器(面板):

#
組件
描述
1
JPanel
一般輕量級面板容器組件    
2
JScrollPane
帶滾動條的,可以水平和垂直滾動的面板組件    
3
JSplitPane
分隔面板  
4
JTabbedPane
選項卡面板
5
JLayeredPane
層級面板    

特殊的中間容器:

#
組件
描述
1
JMenuBar
菜單欄  
2
JToolBar
工具欄
3
JPopupMenu
彈出菜單
4
JInternalFrame  
內部窗口  

(3)基本組件

基本組件是直接實現人機交互的組件。

常用的簡單的基本組件:

#
組件
描述
1
JLabel
標簽    
2
JButton
按鈕  
3
JRadioButton
單選按鈕  
4
JCheckBox
復選框  
5
JToggleButton
開關按鈕  
6
JTextField
文本框  
7
JPasswordField
密碼框    
8
JTextArea
文本區域  
9
JComboBox
下拉列表框  
10
JList
列表
11
JProgressBar
進度條    
12
JSlider
滑塊

選取器組件:

#
組件
描述
1
JFileChooser
文件選取器
2
JColorChooser
顏色選取器    

其他較為復雜的基本組件:

#
組件
描述
1
JTable
表格  
2
JTree

3. 布局管理器

把 Swing 的各種組件(JComponent)添加到面板容器中(JPanel),需要給面板容器指定布局管理器(LayoutManager),明確容器(Container)內的各個組件之間的排列布局方式。

常用的布局管理器:

#
布局管理器
描述
1
FlowLayout
流式布局,按組件加入的順序,按水平方向排列,排滿一行換下一行繼續排列。
2
GridLayout
網格布局,把Container按指定行列數分隔出若干網格,每一個網格按順序放置一個控件。    
3
GridBagLayout
網格袋布局,按網格劃分Container,每個組件可占用一個或多個網格,可將組件垂直、水平或沿它們的基線對齊。    
4
BoxLayout
箱式布局,將Container中的多個組件按 水平 或 垂直 的方式排列。
5
GroupLayout
分組布局,將組件按層次分組(串行 或 并行),分別確定 組件組 在 水平 和 垂直 方向上的位置。
6
CardLayout
卡片布局,將Container中的每個組件看作一張卡片,一次只能顯示一張卡片,默認顯示第一張卡片。
7
BorderLayout
邊界布局,把Container按方位分為 5 個區域(東、西、南、北、中),每個區域放置一個組件。
8
SpringLayout
彈性布局,通過定義組件四條邊的坐標位置來實現布局。
9
null
絕對布局,通過設置組件在Container中的坐標位置來放置組件。

4. 代碼實例: 一個簡單的窗口程序          

package com.xiets.swing;import javax.swing.*;public class Main {

    public static void main(String[] args) {        // 1. 創建一個頂層容器(窗口)
        JFrame jf = new JFrame("測試窗口");          // 創建窗口
        jf.setSize(250, 250);                       // 設置窗口大小
        jf.setLocationRelativeTo(null);             // 把窗口位置設置到屏幕中心
        jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); // 當點擊窗口的關閉按鈕時退出程序(沒有這一句,程序不會退出)

        // 2. 創建中間容器(面板容器)
        JPanel panel = new JPanel();                // 創建面板容器,使用默認的布局管理器

        // 3. 創建一個基本組件(按鈕),并添加到 面板容器 中
        JButton btn = new JButton("測試按鈕");
        panel.add(btn);        // 4. 把 面板容器 作為窗口的內容面板 設置到 窗口
        jf.setContentPane(panel);        // 5. 顯示窗口,前面創建的信息都在內存中,通過 jf.setVisible(true) 把內存中的窗口顯示在屏幕上。
        jf.setVisible(true);
    }

}

結果展示:

swing組件是什么

關于swing組件是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

特克斯县| 阿荣旗| 洱源县| 当雄县| 庄河市| 海淀区| 韩城市| 景洪市| 双牌县| 长汀县| 漠河县| 香格里拉县| 安仁县| 旌德县| 大城县| 云梦县| 通山县| 晋中市| 武夷山市| 安新县| 安远县| 榕江县| 绥棱县| 卢氏县| 西畴县| 沿河| 白城市| 聂荣县| 通道| 叶城县| 盐山县| 正蓝旗| 崇文区| 嵩明县| 新宁县| 冷水江市| 崇阳县| 高青县| 娱乐| 呈贡县| 海阳市|