迭代hashmap并添加项目以摆动jcombobox

时间:2013-01-06 19:03:15

标签: java swing model-view-controller jcombobox comboboxmodel

我正在开发我的第一个Java应用程序而且我被困在这个部分,我需要使用hashmap中的项目填充我的组合框。

我正在使用模型视图控制器方法并尝试从GUI中填充组合框。因此,在用户单击按钮后,将调用一个方法,该方法应与控制器通信并请求组合框的项目。控制器应该将项目发送回GUI,并且可以填充组合框。

因此,在我的一个模型文件中,我创建了一个hashmap并通过我的控制器向它添加项目。

hashmap如下所示:

HashMap<Integer, Customer> customerRegisterHashMap = new HashMap<Integer, Customer>();

我们假设现在根据Customer类属性填充了样本数据。

现在,我想我需要在控制器或模型本身中实现一个方法,它迭代上面的hashmap并返回数据(集合?)。

我愿意(另一个假设,可能没有必要),需要再次遍历这些数据,这次只在GUI类中,并逐项添加到组合框中。

所以项目看起来像这样:5个文件,Controller,Customerregister,Customer,Frame和显示Frame的应用程序文件。

非常感谢您的任何建议。

1 个答案:

答案 0 :(得分:1)

这可能会给你一个想法:

HashMap<Integer, Customer> stuff = new HashMap<Integer, Customer>();
stuff.put(0, new Customer());
stuff.put(2, new Customer());
Iterator it = stuff.keySet().iterator();
while(it.hasNext())
{
    ComboBox.addItem(stuff.get(it.next()));
}

您可以在应用中传递HashMap,然后只需将其中的内容添加到JComboBox,如上所述。