如何使用方法接受要传递的值

时间:2014-11-26 12:00:52

标签: java swing jframe jtextfield jlist

我正在尝试从一个表单中的jList中选择一个项目(主页),并从ArrayList中提取数据并以不同的形式将数据输出到单独的jTextFields (细节)。下面是我试图用来做这个的方法(我知道的不是很多!)。

public void passObjectData()
{
    int i = proObjList.getSelectedIndex();
}

我知道一旦方法完成,我可以在下一个表单中的表单加载方法上调用它,但我仍然坚持如何使方法正确。

我不知道您的帮助需要哪些其他代码(如果有的话)。

1 个答案:

答案 0 :(得分:2)

  

我将数据硬编码到ArrayList并输出了jList的名称。现在我想得到一个人存储的所有数据   在ArrayList(姓名,地址,电话号码等)并提供此信息   进入jTextFields。

正如我理解你的问题,这个ArrayList是用于填充ListModel的不当数据结构,你想从JList获取所选索引以检索存储在该数组列表中的正确对象。在这种情况下,您可以:

  • 拥有一个名为Person的域类来保存此人的数据(姓名,地址等)
  • Person个对象添加到ListModel
  • 提供适当的ListCellRenderer以显示此人的姓名。
  • 使用JList#getSelectedValue()获取所选的Person
  • 将此选定的Person对象传递到文本字段的表单并相应更新。
  • 可选:将ListSelectionListener附加到JList,以便倾听用户的选择更改并自动执行上一步。

请参阅示例here示例的前3个点(注意:示例使用的是JComboBox,但同样适用于JList

建议读数

旁注

不确定您的表单是JFrames还是以下情况:请注意我们应避免使用多个JFrames。请参阅此主题:The Use of Multiple JFrames, Good/Bad Practice?