Java JList不显示项目

Java JList不显示项目,java,swing,jlist,Java,Swing,Jlist,我在显示JList的项目时遇到一些问题 DefaultListModel<String> model = new DefaultListModel<String>(); model.addElement("one"); model.addElement("two"); model.addElement("three"); list = new JList<String>(model); list.setCellRenderer(new DefaultList

我在显示JList的项目时遇到一些问题

DefaultListModel<String> model = new DefaultListModel<String>();
model.addElement("one");
model.addElement("two");
model.addElement("three");

list = new JList<String>(model);
list.setCellRenderer(new DefaultListCellRenderer());
list.setVisible(true);
DefaultListModel=newDefaultListModel();
模型。附录(“一”);
模型.附录(“二”);
模型。附录(“三”);
列表=新JList(型号);
setCellRenderer(新的DefaultListCellRenderer());
list.setVisible(true);
我也在没有设置ListCellRenderer的情况下尝试了它,但仍然没有成功

你能告诉我我做错了什么吗?

这对我很有用:

public class JListTest implements Runnable {
    public static void main(String[] args) {
        SwingUtilities.invokeLater(new JListTest());
    }

    @Override
    public void run() {
        JFrame frame = new JFrame(getClass().getSimpleName());
        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        frame.setSize(640, 480);
        frame.setLayout(new BorderLayout(4, 4));
        frame.add(getComponent(), BorderLayout.CENTER);
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }

    Component getComponent() {
        DefaultListModel<String> model = new DefaultListModel<>();
        model.addElement("one");
        model.addElement("two");
        model.addElement("three");

        JList<String> list = new JList<>(model);
        list.setCellRenderer(new DefaultListCellRenderer());
        list.setVisible(true);
        return list;
    }
}
public类JListTest实现可运行{
公共静态void main(字符串[]args){
调用器(新的JListTest());
}
@凌驾
公开募捐{
JFrame=newJFrame(getClass().getSimpleName());
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
帧设置大小(640480);
frame.setLayout(新的BorderLayout(4,4));
添加(getComponent(),BorderLayout.CENTER);
frame.pack();
frame.setLocationRelativeTo(空);
frame.setVisible(true);
}
组件getComponent(){
DefaultListModel=新的DefaultListModel();
模型。附录(“一”);
模型.附录(“二”);
模型。附录(“三”);
JList列表=新的JList(型号);
setCellRenderer(新的DefaultListCellRenderer());
list.setVisible(true);
退货清单;
}
}

感谢您的回复和评论。问题是没有显示任何列表项

在将来,我将添加一个最小的可编译程序

我的问题是由于试图将
JPanel
添加到构造函数中的
JDialog
中,但是
JPanel
此时是
null
,因为它是在
createUIComponents
方法中初始化的


初学者请原谅。

演示如何将
JList
添加到容器(
JPanel
/
JFrame
)“我遇到了一些问题”-问题是什么?描述它们。请将您的示例扩展到一个最小的、可编译的程序来演示这个问题。从您的简短代码中不清楚问题出在哪里。你也没有解释你到底遇到了什么问题。为了更快地获得更好的帮助,请发布一个(最小完整的可验证示例)或(简短、自包含、正确的示例)。(是@Duncan建议的,但有链接)我投反对票。我们只得到了一小段代码。把它放到整个程序中,并证明它在您的环境中工作,对OP并没有真正的帮助。让我们了解一下他的应用程序中发生了什么,然后帮助他修复它。