我有一個包含多個對象的數組列表,這些列表顯示在JList面板中。我想選擇一個對象,當我按下按鈕時,它會將選定的項目添加到另一個ArrayList。那一個也會顯示在第二個JList上。使用Swing將對象從一個ArrayList移動到另一個
下面的代碼顯示到目前爲止,我所做的工作:
import java.util.ArrayList;
/**
*
* ArrayList for the class, will hold all food items
* @author Jonathan
* @version 1.0
*
*/
public class RestaurantArrayList extends MenuItem
{
public RestaurantArrayList(String nameFood, String typeFood, float foodPrice, int caloryCount) {
super(nameFood, typeFood, foodPrice, caloryCount);
}
public static final ArrayList<MenuItem> items;
static {
items = new ArrayList<>();
items.add(new MenuItem("Coca Cola", "Drink", 3.00f, 38));
items.add(new MenuItem("Fanta Orange", "Drink", 3.00f, 31));
items.add(new MenuItem("Glass of Red Wine", "Drink", 5.00f, 85));
items.add(new MenuItem("Glass of White Wine", "Drink", 5.00f, 82));
items.add(new MenuItem("Carling", "Drink", 3.50f, 189));
items.add(new MenuItem("Fosters", "Drink", 3.50f, 378));
items.add(new MenuItem("Water", "Drink", 0.00f, 0));
items.add(new MenuItem("Breads", "Starter", 5.00f, 150));
items.add(new MenuItem("Cold Meat", "Starter", 5.00f, 150));
items.add(new MenuItem("Potato Skins and Barbeque Sauce", "Starter", 5.00f, 500));
items.add(new MenuItem("Cold Meat", "Starter", 5.00f, 400));
items.add(new MenuItem("Garlic Bread and Cheese", "Starter", 4.50f, 450));
items.add(new MenuItem("Steak", "Main", 13.50f, 750));
items.add(new MenuItem("Cheese and Bacon Burger", "Main", 8.00f, 850));
items.add(new MenuItem("Spaghetti Cabonara", "Main", 7.00f, 675));
items.add(new MenuItem("Steak", "Main", 13.50f, 378));
items.add(new MenuItem("Seafood Paella", "Main", 10.00f, 850));
}
}
這是第一個ArrayList中與加入到陣列我的所有項目。
JButton button = new JButton(">>");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
button.setBounds(333, 180, 59, 25);
contentPane.add(button);
這是我需要使用動作偵聽器的按鈕。但我不確定什麼要放入動作偵聽器。我還沒有第二個數組,因爲我不知道如何設置它,所以我可以動態地添加對象。
如果我以一種奇怪的方式討論這個問題,那麼我願意接受建議,記住我是新人,所以我可能會用漫長的方法去解決這個問題。
您的代碼不完整且不夠清晰。代碼中定義的另一個'Arraylist'在哪裏?請提供一個http://stackoverflow.com/help/mcve – STaefi
我不確定你的意思,你是在談論我已經展示的ArrayList,還是我說過我還沒有做的那個? –
請附上與填充第一個和第二個JList相關的代碼(您是否使用'DefaultListModel')? – Yazan