133 次瀏覽
CardLayout 的功能以順序方式排列元件,一次只顯示一個元件,每個元件都被視為一張卡片。CardLayout 與其他佈局管理器不同,其他佈局管理器嘗試一次顯示容器內的所有元件,而 CardLayout 一次只顯示一個元件。在 CardLayout 中,卡片通常放置在容器中,例如 JPanel。元件按照新增的順序放置到卡片佇列中。CardLayout 的重要方法是 first()、last()、next()、previous() 和 show()。示例 import java.awt.*; ... 閱讀更多
2K+ 次瀏覽
GridBagLayout 是一個非常靈活的佈局管理器,它允許我們使用約束來定位元件彼此之間的相對位置。每個 GridBagLayout 使用一個動態的矩形單元格網格,每個元件佔據一個或多個單元格,稱為其顯示區域。由 GridBagLayout 管理的每個元件都與一個 GridBagConstraints 例項相關聯,該例項指定元件在其顯示區域內的佈局方式。GridBagConstraints 我們可以透過設定一個或多個公共例項變數來自定義 GridBagConstraints 物件。這些變數指定元件位置、大小、增長因子、錨點、內邊距、填充和填充。gridx:指定元件最左單元格的 int 值…… 閱讀更多
6K+ 次瀏覽
JPanel 是一個輕量級容器,它是 Java 中的一個不可見元件。JPanel 的預設佈局是 FlowLayout。建立 JPanel 後,可以透過呼叫從 Container 類繼承的 add() 方法將其他元件新增到 JPanel 物件。paintComponent() 此方法需要在 JPanel 上繪製內容,而不是繪製背景顏色。此方法已存在於 JPanel 類中,因此我們需要使用 super 宣告來向此方法新增內容,並以 Graphics 物件作為引數。super.paintComponent() 代表 JPanel 的普通 paintComponent() 方法,它只能處理面板的背景,必須在…… 閱讀更多
JFrame 是 javax.swing 包中的一個類,它可以擴充套件 java.awt.frame 類。它是一個帶有邊框和標題欄的頂級視窗。JFrame 類有很多方法可以用來定製它。設定 JFrame 的大小後,我們仍然可以透過將游標放在角上並拖動它來更改大小,或者如果我們按下右上角關閉旁邊的調整大小選項,它將最大化到全屏大小。這是因為 JFrame 類的調整大小預設設定為 true。我們可以…… 閱讀更多
BorderFactory 是一個工廠類,它提供 Java 中不同型別的邊框。邊框型別 BevelBorder:此邊框繪製凸起或凹陷的斜面邊緣。EmptyBorder:它不進行任何繪製,但確實佔用空間。EtchedBorder:凹陷蝕刻邊框呈現矩形外觀,凸起蝕刻邊框看起來像螢幕表面。LineBorder:在元件周圍繪製一個簡單的矩形。我們可以在 LineBorder 建構函式中指定線條的顏色和寬度。MatteBorder:我們可以使用某種顏色建立 MatteBorder,並指定元件左側、頂部、右側和底部的邊框大小。MatteBorder 還允許我們…… 閱讀更多
851 次瀏覽
JTextArea 是一個多行文字元件,用於顯示文字或允許使用者輸入文字,並且在嘗試實現 JTextArea 元件的功能時,它將生成 CaretListener 介面。JTextArea 類繼承 Java 中的 JTextComponent 類。在下面的示例中,我們可以使用 ItemListener 介面實現一個 JTextArea 類,使用者可以選擇自動換行或單詞換行的複選框。示例 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class JTextAreaTest { public static void main(String[] args ) { EventQueue.invokeLater(new Runnable() { @Override public void run() { …… 閱讀更多
3K+ 次瀏覽
JScrollBar 是一個元件,它不處理它自己的事件,而 JScrollPane 是一個容器,它處理它自己的事件並執行它自己的滾動。JScrollBar 不能有 JScrollPane,而 JScrollPane 可以有 JScrollBar。JScrollBar JScrollBar 類的物件用於新增水平和垂直捲軸,允許使用者在指定的最小值和最大值之間選擇專案。JScrollBar 類是捲軸的實現,並繼承 JComponent 類。語法 public class JScrollBar extends JComponent implements Adjustable, Accessible 示例 import javax.swing.*; import java.awt.*; public class JScrollBarTest extends JFrame{ JScrollBarTest() { setTitle("JScrollBar Test"); JScrollBar jsb = new JScrollBar(); …… 閱讀更多
848 次瀏覽
JToggleButton JToggleButton 是 AbstractButton 的擴充套件,它可以用來表示可以切換 ON 和 OFF 的按鈕。當第一次按下 JToggleButton 時,它會保持按下狀態,只有在第二次按下時才能釋放。JToggleButton 在每次按下時都會生成一個 ActionEvent。JToggleButton 也可以生成 ItemEvent,此事件由支援選擇概念的那些元件使用。當 JToggleButton 被按下時,它被選中。當它彈出時,它被取消選中。要處理專案事件,必須實現 ItemListener 介面。此介面定義了 itemStateChanged() 方法,該方法…… 閱讀更多
4K+ 次瀏覽
JTextField 是最重要的元件之一,它允許使用者以單行格式輸入文字值。我們可以透過使用 PlainDocument 類來限制使用者可以輸入到 JTextField 中的字元數。在下面的示例中,我們可以使用 PlainDocument 類實現邏輯,因此我們可以允許使用者最多輸入 10 個字元,如果輸入超過 10 個字元,則不允許。示例 import java.awt.*; import javax.swing.*; import javax.swing.text.*; class JTextFieldLimit extends PlainDocument { private int limit; JTextFieldLimit(int limit) { super(); …… 閱讀更多
JComboBox 是一個元件,它顯示一個下拉列表,併為使用者提供選項,使用者一次只能選擇一個專案,而 JList 向用戶顯示多個專案(行),並允許使用者選擇多個專案。JComboBox JComboBox 可以是可編輯的或只讀的。ActionListener、ChangeListener 或 ItemListener 介面可以用來處理使用者對 JComboBox 的操作。getSelectedItem() 方法可以用來從組合框中獲取選定的或輸入的專案。setEditable() 方法可以用來開啟或關閉組合框的文字輸入部分。我們可以建立一個…… 閱讀更多