gpt4 book ai didi

java刷新一个数组到jList

转载 作者:搜寻专家 更新时间:2023-10-31 08:21:28 24 4
gpt4 key购买 nike

好的,我有一个 JList 并且内容是用一个数组提供的。我知道如何将元素添加到数组,但我想知道如何刷新 JList ......或者甚至可能吗?我试过谷歌。 :\

import java.applet.Applet;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;


public class bs extends JApplet implements MouseListener {

public static String newline;
public static JList list;

public void init() {



String[] data = {"one", "two", "three", "four"};
list = new JList(data);



this.getContentPane().add(list);

list.addMouseListener(this);

String newline = "\n";

list.setVisible(true);

}

public void refresh(){
Address found;
this.listModel.clear();

int numItems = this.getAddressBookSize();
String[] a = new String[numItems];
for (int i=0;i<numItems;i++){
found = (Address)Addresses.get(i);
a[i] = found.getName();
}
/* attempt to sort the array */
Arrays.sort(a, String.CASE_INSENSITIVE_ORDER);
for (int i=0;i<numItems;i++) {
this.listModel.addElement(a[i]);
}
}



public void mousePressed(MouseEvent e) { }

public void mouseReleased(MouseEvent e) {
Object index = list.getSelectedValue();
System.out.println("You clicked on: " + index);
}

public void mouseEntered(MouseEvent e) { }

public void mouseExited(MouseEvent e) { }

public void mouseClicked(MouseEvent e) { }




public void paint(Graphics g) {

}
}

有什么想法吗?

谢谢。

最佳答案

一个好的方法是创建一个 ListModel 来为您管理数据和处理更新。

类似于:

DefaultListModel listModel=new DefaultListModel();
for (int i=0; i<data.length; i++) {
listModel.addElement(data[i]);
}
list=new JList(listModel);

然后您可以简单地通过列表模型进行更改,例如

listModel.addElement("New item");
listModel.removeElementAt(1); // remove the element at position 1

关于java刷新一个数组到jList,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3268383/

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