我想让我的通用选择器组件在创建时加载首选项,并在更改时保存它们。
我可以很容易地用下面的成语对TextField或CheckBox做同样的操作
checkBox.setSelected(Preferences.get(key, false));
checkBox.addFocusListener(new FocusListener()
{
@Override
public void focusGained(final Component cmp)
{
}
@Override
public void focusLost(final Component cmp)
{
Preferences.set(key, checkBox.isSelected());
}
});但是,对于Picker和PickerComponent来说,这个成语不起作用,因为焦点侦听器是无效的。
如何做到这一点:
谢谢!
发布于 2018-12-22 05:27:02
选择器是一个按钮,应该可以很好地处理焦点事件,但是它可能会在单击完成后广播事件。一般来说,焦点事件是为键导航而设计的,所以我不会在触摸设备上这样做。它们过于冗长,可能导致行为不佳。
我建议在复选框操作监听器中翻转开关,而不是通过焦点刷新它。
https://stackoverflow.com/questions/53879871
复制相似问题