JAVA GUI學習 - JList列表、JScrollPane滾動條組件學習


 1 /**
 2  * 本例結合JList和JScrollPane共同使用
 3  * @author Wfei
 4  *
 5  */
 6 public class JListKnow extends JFrame
 7 {
 8     JList jListKnow01;
 9     JList jListKnow02;
10     JScrollPane jScrollPane02;
11     
12     JSplitPane jSplitPane;
13     JPanel jPanelTop;
14     JPanel jPanelBottom;
15     public JListKnow()
16     {
17         this.setBounds(300, 100, 500, 500);
18         this.setTitle("JList的兩種使用方式:推薦第二種使用方式");
19         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
20         
21         jPanelTop = new JPanel();
22         jPanelBottom = new JPanel();
23         
24         jSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,jPanelTop,jPanelBottom);
25         jSplitPane.setDividerLocation(225);
26         
27         this.add(jSplitPane);
28         
29         String[] values = new String[]{"CCCCCC","AAAAAAAA","CCCCCC","DDDDDDD","EEEEEEEEEEEE","FFFFFFFFFFF","HHHHHHHHHHHH"};
30         /********************************JList第一種使用方式*************************************/
31         jListKnow01 = new JList(values);
32         
33         //設置默認選擇項
34         jListKnow01.setSelectedIndex(1);
35         
36         //得到已選擇項的索引
37         int index = jListKnow01.getSelectedIndex();//JOptionPane.showMessageDialog(null, index+":被選中了");
38         int[] indexS = jListKnow01.getSelectedIndices();
39         //得到已選擇項的值
40         String value = (String) jListKnow01.getSelectedValue();
41 //        String[] svalues = (String[]) jListKnow01.getSelectedValues();
42         
43         //設置列表的選擇模式  默認為多選模式
44         jListKnow01.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
45         
46         jPanelTop.add(jListKnow01);
47         /********************************JList第二種使用方式:推薦*************************************/
48         /********************************通過模型構建列表********************************/
49         //實例化模型
50         DefaultListModel defaultListModel = new DefaultListModel();
51         //向模型中添加元素
52         for (int i = 0; i < values.length; i++)
53         {
54             defaultListModel.addElement(values[i]);
55         }
56         //刪除模型中所有的元素
57 //        defaultListModel.removeAllElements();
58         //根據索引移除模型中的元素,可能會因為沒有該索引二報錯
59 //        defaultListModel.remove(0);
60         //根據值移除模型中的元素,如果存在多個相同的值,則移除第一個索引的值,如果沒有,不會報錯
61         defaultListModel.removeElement("CCCCCC");
62         //替換制定索引處的元素
63         defaultListModel.setElementAt("哈哈哈", 1);
64         //根據模型實例化出來JList
65         jListKnow02 = new JList(defaultListModel);
66         
67         jScrollPane02 = new JScrollPane(jListKnow02);
68         
69         jPanelBottom.add(jListKnow02);
70     }
71     public static void main(String[] args)
72     {
73         JListKnow jListKnow = new JListKnow();
74         jListKnow.setVisible(true);
75     }
76 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM