我正在尝试在我正在开发的摇摆gui上创建一个“持续时间”字段。为此,我有3个JSpinner组件。天,小时和分钟。
JSpinner durationDaySpinner;
JSpinner durationHourSpinner;
JSpinner durationMinuteSpinner;
如果可能,我想将这3个组件“绑定”回单个域字段:
long durationInMs;
即
durationInMs = days*24*60*60*1000 + hours*60*60*1000 + minutes*60*1000;
有人可以建议我如何使用JGoodies绑定吗?我只将单个组件绑定到模型/域字段。
干杯
答案 0 :(得分:1)
您必须为每个微调器添加单独的ValueModel
,将每个ValueModel
绑定到相应的微调器,然后向所有三个{{1}添加一个PropertyChangeListener
}。当三个微调器绑定ValueModels
中的任何一个所持有的值发生变化时,抓取每个值,计算你在问题中完成的ms,并在bean属性上设置它(或{{1}你要设置。
基本上,您要在要绑定的域模型和UI模型之间添加另一个迷你模型,以便将多个UI绑定组件映射到单个域属性。
另外,为了便于阅读,我建议使用ValueModels
而不是大量的乘法。
例如,
ValueModel