java介面編程(9),java介面編程

來源:互聯網
上載者:User

java介面編程(9),java介面編程

本文是自己學習所做筆記,歡迎轉載,但請註明出處:http://blog.csdn.net/jesson20121020

  列表框和JComboBox組合框明顯不同,這不僅僅是體現在外觀上。當啟用JComboBox組合框時,會出現下拉式清單;而JList總是在螢幕上佔據固定行的空間,大小也不會改變。如果要得到列表框中被選中的項目,只需調用getSelectValues(),它可以產生一個字串數組,裡面是被選中的項目名稱。

   另外,JList組件也允許多重選取,要是按住ctrl鍵,連續在多重專案上單擊,那麼原先選中的項目仍舊保持選中的狀態,也就是說可以選中任意多的項目,如果選中了某個項目,按住shift鍵關單擊另一個項目,那麼這兩個項目之間的所有項目都將被選中,這和在windows下的操作選中操作類似。

public class List extends JFrame {private String[] weekDays = {"星期一","星期二","星期三","星期四","星期五","星期六","星期天"};private DefaultListModel lItems = new DefaultListModel();private JList lst = new JList(lItems);private JTextArea t = new JTextArea(weekDays.length,10);private JButton b = new JButton("Add Items");private int count = 0;private ActionListener bl = new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubif(count < weekDays.length){lItems.add(0, weekDays[count++]);}else{b.setEnabled(false);}}};private ListSelectionListener ll = new ListSelectionListener() {@Overridepublic void valueChanged(ListSelectionEvent e) {// TODO Auto-generated method stubif(e.getValueIsAdjusting())return ;t.setText("");for(Object item : lst.getSelectedValues())t.append(item + "\n");}};public List() {// TODO Auto-generated constructor stubsetLayout(new FlowLayout());setVisible(true);setSize(300,200);t.setEnabled(false);Border brd = BorderFactory.createMatteBorder(1, 1, 2, 2, Color.BLACK);lst.setBorder(brd);t.setBorder(brd);for(int i = 0; i < 4;i++){lItems.addElement(weekDays[count++]);}add(t);add(lst);add(b);lst.addListSelectionListener(ll);b.addActionListener(bl);}/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubnew List();}}
  執行結果如下:

       其實在很多應用程式中都可以見到這種列表框,另外,當列表框的項目過多時,JList並沒有提供滾動,當然了,可以將JList封裝到JScrollPane,那麼它將會實現滾動的效果。



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.