首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java: DefaultListModel和数组

Java: DefaultListModel和数组
EN

Stack Overflow用户
提问于 2015-11-06 03:48:40
回答 2查看 1.9K关注 0票数 1

是否有方法将数组中的所有字符串添加到JList中?我正在使用DefaultListModel,我不知道如何使用它。难道没有一种方法只使用addElement然后添加数组吗?我试过了,但不管用。

这是我的代码:

代码语言:javascript
复制
package program;

import java.awt.Dimension;
import java.awt.FlowLayout;

import javax.swing.DefaultListModel;
import javax.swing.JFrame; 
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.ListSelectionModel;

public class Main{
public static void main(String[] args){

    JFrame frame = new JFrame();
    JPanel pane = new JPanel();
    DefaultListModel model = new DefaultListModel();
    JList list = new JList(model);

    //JFrame, frame
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(500, 500);
    frame.setResizable(false);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);

    //JPanel, panel
    pane.setLayout(new FlowLayout());
    frame.add(pane);

    //JList, list

    String[] lists = {"asjd.txt", "okay.ss", "jsjs.okay.txt"};

    model.addElement(lists);

    JScrollPane listScroller = new JScrollPane(list);
    list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    list.setLayoutOrientation(JList.VERTICAL);
    list.setVisibleRowCount(3);

    listScroller.setPreferredSize(new Dimension(250, 80));

    listScroller.setBounds(5, 5, 200, 300);
    pane.add(listScroller);




}
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-06 03:52:38

创建您自己的循环:

代码语言:javascript
复制
for (String item: lists)
    model.addElement( item );

此外,框架应该是可见的,在所有的组件已经添加到框架。

代码语言:javascript
复制
listScroller.setPreferredSize(new Dimension(250, 80));
listScroller.setBounds(5, 5, 200, 300);

不要使用setPreferredSize()。您已经使用setVisibleRowCount()来控制JList的大小。

不要使用setBounds()。这是布局管理器的工作。

票数 3
EN

Stack Overflow用户

发布于 2015-11-06 03:59:41

JList包含一个构造函数

代码语言:javascript
复制
JList(ListModel <E> dataModel)

这意味着您可以创建自己的接受数组的ListModel对象。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33559149

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档