- 论坛徽章:
- 0
|
首先说明的是我用的工具是NetBeans,感觉在图形设计上,NetBeans真的是比Eclipse好的多。
(1).将JList托到Frame上,然后再代码状态添加如下代码:
javax.swing.DefaultListModel model1 = new javax.swing.DefaultListModel();
(2).然后在你要动态添加的地方加上这个代码:
jListKmName.setModel(model1);
(3)之后你就什么都不用管了,所有的交给java自动完成,你所要做的只是操作model1;
例如:
model1.addElement("增加");
model1.removeElement("删除");
这时你就可以看见效果了,其实很简单.
(4)再来点高级的,就是可能有这种情况,就是当你在列表框里删除一个元素后,当你再增加元素时想保持相对位置不便,嘿嘿,别着急,马上就介绍这种方法,其实也很简单
首先再定义一个变量:int rememberKmIndex=JList1.getSelectedIndex(); /**主要是记住你当前的选中的元素索引号(不选中咋删除啊,关键是记住位置)。*/
然后使用 model1.remove(rememberKmIndex); //删除你当前选中的元素(切记是用索引号删除的)
接着是增加元素,用这个命令: model1.add(rememberKmIndex,"add");/**看吧,前面记住的索引号有效果了,你会惊奇的发现,在你删除的位置上增添了新加入的元素”add“;*/
(5)先别急着走,还有一点重要的那!!添加了这么多元素怎么取啊!!俺之前看过一篇这样的文章,上面利用是Vector之类的冬冬,用它来动态记录元素,取的时候由vector取,其实这也是个办法,但太繁琐,不使用新手,这里提供个更简单的方法:
String[] kmName = new String[model1.getSize()];
for(int i=0;i<model1.getSize();i++){
kmName=(String)model1.getElementAt(i);
}
看吧,就三行,先新建个数组,大小可以用model1的大小来决定,即你多少个元素,俺的数组就多大,之后的就更简单了,一个for循环,把所有的元素都放在字符数组里,之后怎么处理就都听你的了。
总结:通过以上的5点,你应该已经掌握了如何使用JList了,什么,不会让他自动扩展成多行,那个简单,把它添加到 jScrollPane 中就都搞定了
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/19492/showart_272980.html |
|