Java Swing JComboBox下拉列表框的示例程式碼
阿新 • • 發佈:2020-01-07
1. 概述
官方JavaDocsApi: javax.swing.JComboBox
JComboBox,下拉列表框。JComboBox以下列列表的形式展示多個選項,使用者可以從下拉列表中選擇一個值。
其中的選項內容由一個 ComboBoxModel 例項來維護。
如果設定JComboBox為可編輯狀態,除了選擇指定的選項值外,還允許使用者自行輸入值(自行輸入的值索引為-1)。
JComboBox 常用構造方法:
/** * 一個 JComboBox 例項維護這一個 ComboBoxModel 例項。 * ComboBoxModel 例項可以直接建立,也可以通過把 陣列 或 集合 傳遞到 JComboBox 中間接建立。 * JComboBox 內部建立的 ComboBoxModel 例項是 DefaultComboBoxModel。 */ JComboBox() JComboBox(ComboBoxModel model) JComboBox(Object[] items) JComboBox(Vector<?> items)
JComboBox 常用方法:
// 設定選中的索引 void setSelectedIndex(int index) // 獲取當前選中的索引 int getSelectedIndex() // 獲取當前選中的資料項 Object getSelectedItem() // 設定選項資料模型 void setModel(ComboBoxModel<?> model) // 獲取維護選項資料的 ComboBoxModel。 // 再通過 model.getElementAt(int index) 和 model.getSize() // 可分別 獲取指定索引的選項資料 和 選項數量。 ComboBoxModel<?> getModel() // 新增選項選中狀態改變的監聽器 void addItemListener(ItemListener listener) // 設定下拉列表框是否可編輯,預設不可編輯。 // 如果設定為可編輯,則除了選擇指定的選項值外,還允許使用者自行輸入值(自行輸入的值索引為-1) void setEditable(boolean flag)
2. 程式碼例項
package com.xiets.swing; import javax.swing.*; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; public class Main { public static void main(String[] args) { JFrame jf = new JFrame("測試視窗"); jf.setSize(250,250); jf.setLocationRelativeTo(null); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); JPanel panel = new JPanel(); // 新增一個標籤 JLabel label = new JLabel("水果:"); panel.add(label); // 需要選擇的條目 String[] listData = new String[]{"香蕉","雪梨","蘋果","荔枝"}; // 建立一個下拉列表框 final JComboBox<String> comboBox = new JComboBox<String>(listData); // 新增條目選中狀態改變的監聽器 comboBox.addItemListener(new ItemListener() { @Override public void itemStateChanged(ItemEvent e) { // 只處理選中的狀態 if (e.getStateChange() == ItemEvent.SELECTED) { System.out.println("選中: " + comboBox.getSelectedIndex() + " = " + comboBox.getSelectedItem()); } } }); // 設定預設選中的條目 comboBox.setSelectedIndex(2); // 新增到內容面板 panel.add(comboBox); jf.setContentPane(panel); jf.setVisible(true); } }
結果展示:
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。