如何绑定组合对象的属性

时间:2011-12-22 10:13:38

标签: java swing

我是SwingBindings的新手。

我有一个名为Project的bean列表,每个Project都有一个名为Config的另一个bean的引用。每个Config都有2个属性,如何用swingbindings将bean的两个属性Config绑定到组件形成一个jframe?

项目列表绑定到组合框。当我从组合框(项目中)更改所选项目时,我想刷新与表单中当前所选项目关联的对象配置中的值。

1 个答案:

答案 0 :(得分:2)

试试这个:

  1. 创建自己的实现ListCellRenderer的单元格渲染器。
  2. 将该渲染器分配给包含Projects的comboBox。 (comboBox.setRenderer(...)
  3. 现在,您可以直接将您的Project实例添加到comboBox中,并将其取回。
  4. getListCellRendererComponent(.....)中的ListCellRenderer中,将value(第二个参数)转换为Project并返回要在comboBox中显示的相应值。 (可能是项目的名称/标题)
  5. 将侦听器添加到comboBox。 (可能是ItemListener)并在其action方法中获取comboBox的选定对象,它将是您的Project对象。
  6. 从这个项目对象中,您可以轻松获取Config(如您所说,您已参考Project对象中的Config对象)对象并在框架中设置数据。