溫馨提示×

溫馨提示×

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

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

Java中怎么利用Swing實現一個JList列表框

發布時間:2021-08-07 13:36:49 來源:億速云 閱讀:295 作者:Leah 欄目:編程語言

Java中怎么利用Swing實現一個JList列表框,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

JList 常用構造方法:

/** * 一個 JList 實例維護這一個 ListModel 實例。 * ListModel 實例可以直接創建,也可以通過把 數組 或 集合 傳遞到 JList 中間接創建。 */JList()JList(ListModel dataModel)JList(Object[] listData)JList(Vector<?> listData)

JList 選項數據 相關方法:

// 以數組形式設置選項數據,內部將自動封裝成 ListModelvoid setListData(Object[] listData)// 以集合形式設置選項數據,內部將自動封裝成 ListModelvoid setListData(Vector<?> listData)// 直接設置選項數據的 ListModelvoid setModel(ListModel<?> model)// 獲取維護選項數據的 ListModel。// 再通過 listModel.getElementAt(int index) 和 listModel.getSize() // 可分別 獲取指定索引的選項數據 和 選項數量。ListModel<?> getModel()

JList 選項選中索引 相關方法:

// 設置選擇模式,有三個模式: 只能單選、可間隔多選、可連續多選void setSelectionMode(int selectionMode)// 設置某個選項選中void setSelectedIndex(int index)// 設置某一些選項選中void setSelectedIndices(int[] indices)// 獲取第一個選中的選項索引int getSelectedIndex()// 獲取所有選中的選項索引int[] getSelectedIndices()

JList 字體和顏色 相關方法:

// 設置字體void setFont(Font font)// 設置字體顏色(未選中時)void setForeground(Color fg)// 設置選中選項的字體顏色void setSelectionForeground(Color selectionForeground)// 設置選中條的顏色void setSelectionBackground(Color selectionBackground)

JList 監聽器 相關方法:

// 添加選項選中狀態被改變的監聽器void addListSelectionListener(ListSelectionListener listener)

2. 代碼實例

package com.xiets.swing;import javax.swing.*;import javax.swing.event.ListSelectionEvent;import javax.swing.event.ListSelectionListener;import java.awt.*;public class Main {  public static void main(String[] args) {    JFrame jf = new JFrame("測試窗口");    jf.setSize(300, 300);    jf.setLocationRelativeTo(null);    jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);    JPanel panel = new JPanel();    // 創建一個 JList 實例    final JList<String> list = new JList<String>();    // 設置一下首選大小    list.setPreferredSize(new Dimension(200, 100));    // 允許可間斷的多選    list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);    // 設置選項數據(內部將自動封裝成 ListModel )    list.setListData(new String[]{"香蕉", "雪梨", "蘋果", "荔枝"});    // 添加選項選中狀態被改變的監聽器    list.addListSelectionListener(new ListSelectionListener() {      @Override      public void valueChanged(ListSelectionEvent e) {        // 獲取所有被選中的選項索引        int[] indices = list.getSelectedIndices();        // 獲取選項數據的 ListModel        ListModel<String> listModel = list.getModel();        // 輸出選中的選項        for (int index : indices) {          System.out.println("選中: " + index + " = " + listModel.getElementAt(index));        }        System.out.println();      }    });        // 設置默認選中項    list.setSelectedIndex(1);    // 添加到內容面板容器    panel.add(list);    jf.setContentPane(panel);    jf.setVisible(true);  }}

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

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

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女