概述
- 下拉列表的特點是將多個選項摺疊在一起,只顯示最前面的或被選中的一個。選擇時需要單擊下拉列表右邊的下三角按鈕,這時候會彈出包含所有選項的列表。用戶可以在列表中進行選擇,也可以根據需要直接輸入所要的選項,還可以輸入選項中沒有的內容
JComboBox構造方法
- JComboBox():創建一個空的 JComboBox 對象。
- JComboBox(ComboBoxModel Model):創建一個 JComboBox,其選項取自現有的 ComboBoxModel。
- JComboBox(Object[] items):創建包含指定數組中元素的 JComboBox。
JComboBox常用方法
- void addItem(Object object):將指定的對象作爲選項添加到下拉列表中
- void insertItemAt(Object anObject,int index):在下拉列表框中的指定索引處插入項
- void removeltem(0bject anObject):在下拉列表框中刪除指定的對象項
- void removeItemAt(int anlndex) 在下拉列表框中刪除指定位置的對象項
- void removeAllItems() 從下拉列表框中刪除所有項
- int getItemCount() 返回下拉列表框中的項數
- Object getItemAt(int index) 獲取指定索引的列表項,索引從 0 開始
- int getSelectedIndex() 獲取當前選擇的索引
- Object getSelectedltem() 獲取當前選擇的項
- JComboBox 能夠響應 ItemEvent 事件和 ActionEvent 事件,其中 ItemEvent 觸發的時機是當下拉列表框中的所選項更改時,ActionEvent 觸發的時機是當用戶在 JComboBox 上直接輸入選擇項並回車時。要處理這兩個事件,需要創建相應的事件類並實現 ItemListener 接口和 ActionListener 接口。
Demo
import javax.swing.*;
public class DemoJComboBox {
public static void main(String[] args) {
JFrame jf = new JFrame("下拉列表框組件示例");
JPanel jp = new JPanel();
JLabel jl = new JLabel("證件類型:");
JComboBox box = new JComboBox();
box.addItem("身份證");
box.addItem("駕駛證");
box.addItem("軍官證");
box.insertItemAt("學生證",0);
jf.add(jp);
jp.add(jl);
jp.add(box);
jf.setSize(400,400);
jf.setVisible(true);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
}
運行結果如下