gpt4 book ai didi

java - 打印 JList 的所有内容作为输出

转载 作者:行者123 更新时间:2023-11-30 11:11:34 25 4
gpt4 key购买 nike

我的 GUI 中有一个 JList,它使用 ArrayList 作为数据:

    ArrayList Cruise = new ArrayList();
Cruise.add("Scottish to Greek Waters");
Cruise.add("Greek to Scottish Waters");

JScrollPane scrollPane = new JScrollPane();
CruiseList = new JList(Cruise.toArray());
CruiseList.setPreferredSize(new Dimension(200, 200));
scrollPane.setViewportView(CruiseList);
CruiseList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
CruiseList.setSelectedIndex(0);
CruiseList.setVisibleRowCount(6);
listPanel.add(scrollPane);
Frame1.setVisible(true);

我有一个按钮 - List all Cruises,点击后应该显示为输出:

"Scottish to Greek Waters"
"Greek to Scottish Waters"

但是,单击该按钮后,它仅显示已选择 列表选项作为输出。

这是我目前所拥有的:

listallCruises.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
String AllCruises = CruiseList.getSelectedValue().toString();
System.out.print("All Cruises:\n" + AllCruises + CruiseList.getModel() + "\n");
}
});

如何在单击按钮时打印出列表中的所有元素?

最佳答案

您只输出选定的值,因为这是您调用的方法 getSelectedValue()

要显示所有值,您必须获取模型并遍历这些值,如下所示:

int size = CruiseList.getModel().getSize();
StringBuilder allCruises = new StringBuilder("All cruises:");
for(int i = 0; i < size; i++) {
allCruises.append("\n").append(CruiseList.getModel().getElementAt(i));
}
System.out.print(allCruises);

关于java - 打印 JList 的所有内容作为输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27344395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com