Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何制作可滚动的JList以添加从JOptionPane获取的详细信息_Java_Swing_Jlist_Joptionpane_Scrollable - Fatal编程技术网

Java 如何制作可滚动的JList以添加从JOptionPane获取的详细信息

Java 如何制作可滚动的JList以添加从JOptionPane获取的详细信息,java,swing,jlist,joptionpane,scrollable,Java,Swing,Jlist,Joptionpane,Scrollable,我希望通过JOptionPane(已经完成)重复从用户处获取输入(可能使用按钮),并将详细信息存储在某物中(动态对象数组如何),并将此信息显示为可滚动列表中的列表 我的代码 我必须如何存储飞机的详细信息?我必须如何实现可滚动的JList?任何建议 非常感谢如中所述,JList使用列表模型作为其显示的数据源。只需将数据添加到列表中,并使用它构建列表 DefaultListModel dlm = new DefaultListModel(); // add data JList list =

我希望通过JOptionPane(已经完成)重复从用户处获取输入(可能使用按钮),并将详细信息存储在某物中(动态对象数组如何),并将此信息显示为可滚动列表中的列表


我的代码



我必须如何存储飞机的详细信息?我必须如何实现可滚动的JList?任何建议

非常感谢

如中所述,
JList
使用列表模型作为其显示的数据源。只需将数据添加到列表中,并使用它构建列表

DefaultListModel dlm = new DefaultListModel();
// add data
JList list = new JList(dlm);
panel.add(new JScrollPane(list));

要使JList可滚动,只需将其嵌入到。而不是

add(myList, constraints);

要扩展列表,只需获取JList的ListModel(使用
getListModel
)并使用
add
添加对象

更多关于使用ListModels的信息


更多关于ScrollPane的信息。

您必须使用
ActionListener
的按钮,这是您在代码片段中遗漏的

在“确定”选项中:

JList jlist = ...;

jlist.add(txtflightno.getText());
jlist.add(txtmechanicalstatus.getText());
jlist.add(txtmedicalstatus.getText());
....
....

& 

add(new JScrollPanel(myList), constraints);
在此之后,使用组件的验证方法使用此新项更新列表。 但您应该记住的一点是,列表按行显示每个项目。
我建议您使用它来以有意义的方式显示您的项目…

编码器:我看不出@Haxed在哪里需要
ActionListener
作业窗格
的“确定”按钮应该可以。而且,
JList
不能直接接受数据;应该使用
ListModel
。您在这里得到了一些很好的答案,因此您应该将其中一个标记为已接受。您是说
JScrollPane
add(new JScrollPane(myList), constraints);
JList jlist = ...;

jlist.add(txtflightno.getText());
jlist.add(txtmechanicalstatus.getText());
jlist.add(txtmedicalstatus.getText());
....
....

& 

add(new JScrollPanel(myList), constraints);