Я пытаюсь настроить несколько JSpinner для редактирования одного значения Date - т.е. один счетчик для дней, один для месяцев и т. Д.
Кажется, я должен иметь возможность поделиться одним SpinnerModel
между несколькими JSpinners, но я сталкиваюсь с трудностями при таком подходе.
То, что я пробовал, было в основном следующим образом:
SpinnerDateModel model = new SpinnerDateModel();
JSpinner dayPeer = new JSpinner(model);
dayPeer.setEditor(new JSpinner.DateEditor(dayPeer, "dd"));
JSpinner monthPeer = new JSpinner(model);
monthPeer.setEditor(new JSpinner.DateEditor(monthPeer, "MM"));
При этом я обнаружил, что изменение одного значениясбросить другой.Проблема, похоже, возникла в JSpinner.DefaultEditor.propertyChange()
, который анализирует текст редактора в дату, а затем вызывает setValue()
с этим.
Итак, похоже, мне также нужно реализовать пользовательский компонент редактора с пользовательскимpropertyChange()
метод.Я, наконец, на правильном пути, или я пропустил что-то очевидное?