Java 如何使此JOptionPane使用JScrollBar垂直加载此大型arrayList
如何使用JScrollBar使JOptionPane列表最多包含100项,我知道这是可以做到的。我需要一点指导。 这是我的密码Java 如何使此JOptionPane使用JScrollBar垂直加载此大型arrayList,java,arraylist,Java,Arraylist,如何使用JScrollBar使JOptionPane列表最多包含100项,我知道这是可以做到的。我需要一点指导。 这是我的密码 public static ArrayList<String> Matches = new ArrayList<String>(); private void itemSearch(String name) { try{ String string; Buffered
public static ArrayList<String> Matches = new ArrayList<String>();
private void itemSearch(String name) {
try{
String string;
BufferedReader reader = new BufferedReader(new FileReader("items.txt"));
while((string = reader.readLine()) != null) {
String[] args = string.split(" ");
for(int i = 0; i <= 19461; i++) {
if(args[i].contains(name)) {
itemID = Integer.parseInt(args[i-1]);
itemSearched = name;
Matches.add("Name: "+name+", ID: "+itemID+"");
System.out.println("Item name:"+args[i]+" Item ID:"+itemID+"");
}
}
if(Matches.size()<=1) {
continue;
} else {
JOptionPane.showMessageDialog(null, Matches);
}
AMItemDatabaseLabel3.setText(""+itemID+"");
}
} catch(Exception r) {
r.printStackTrace();
}
}
查看上的Swing教程中的部分 如果可能性数量大于20,则将使用JList显示值
因此,您需要使用数组,而不是包含项目的ArrayList。因此,根据您当前的代码,您需要将项目从ArrayList复制到ArrayList。尽管我非常感谢您的评论,但我仍然需要关于创建JScrollBar的帮助。你能帮我吗?我仍然需要关于创建JScrollBar的帮助-你是否先尝试了这个建议?所以我更改了这个公共静态ArrayList Matches=new ArrayList;要公开静态数组匹配项=新数组@CammyBoy,这不是创建数组的方式。我说您需要将数据从ArrayList复制到数组中。您可以使用ArrayList的toArray方法来执行此操作。