Swing學習10:Java Swing JComboBox

下拉列表的特點是將多個選項摺疊在一起,只顯示最前面的或被選中的一個。選擇時需要單擊下拉列表右邊的下三角按鈕,這時候會彈出包含所有選項的列表。用戶可以在列表中進行選擇,也可以根據需要直接輸入所要的選項,還可以輸入選項中沒有的內容。

下拉列表由 JComboBox 類實現,常用構造方法如下。

  • JComboBox():創建一個空的 JComboBox 對象。
  • JComboBox(ComboBoxModel aModel):創建一個 JComboBox,其選項取自現有的 ComboBoxModel。
  • JComboBox(Object[] items):創建包含指定數組中元素的 JComboBox。

JComboBox 類提供了多個成員方法用於操作下拉列表框中的項,如圖:
在這裏插入圖片描述
JComboBox 能夠響應 ItemEvent 事件和 ActionEvent 事件,其中 ItemEvent 觸發的時機是當下拉列表框中的所選項更改時,ActionEvent 觸發的時機是當用戶在 JComboBox 上直接輸入選擇項並回車時。要處理這兩個事件,需要創建相應的事件類並實現 ItemListener 接口和 ActionListener 接口。

例 1
使用 JFrame 組件創建一個窗口,然後使用 JComboBox 類創建一個包含4個選項的下拉列表框。具體實現代碼如下:

import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class JComboBoxDemo
{
    public static void main(String[] args)
    {
        JFrame frame=new JFrame("Java下拉列表組件示例");
        JPanel jp=new JPanel();    //創建面板
        JLabel label1=new JLabel("證件類型:");    //創建標籤
        JComboBox cmb=new JComboBox();    //創建JComboBox
        cmb.addItem("--請選擇--");    //向下拉列表中添加一項
        cmb.addItem("身份證");
        cmb.addItem("駕駛證");
        cmb.addItem("軍官證");
        jp.add(label1);
        jp.add(cmb);
        frame.add(jp);
        frame.setBounds(300,200,400,100);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

上述代碼創建了一個下拉列表組件 cmb,然後調用 addItem() 方法向下拉列表中添加 4 個選項。運行後下拉列表的效果如圖
在這裏插入圖片描述

謝謝觀看

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章