Добавить функциональный вызов в свойствах WicketStuff Spinner
Как поместить вызов функции в java.util.Properties? onIncrement
,onDecrement
, afterUpdate
или же onStop
свойство метода настройки Spinner от WicketStuff? Я попробовал следующее, но функция не вызывается:
TextField<String> textField = new TextField<String>("textField ", new Model<String>("0"));
textField.add(new Spinner() {
@Override
protected void configure(Properties p) {
super.configure(p);
p.put("afterUpdate", "foo()");
}
});
void fun() {
System.out.println("Hello world!");
}
Javadoc для этих свойств:
Функция onIncrement для вызова после увеличения
Функция onDecrement для вызова после уменьшения
afterUpdate Функция для вызова после обновления значения
Функция onStop для вызова по щелчку или при наведении мыши (по умолчанию = false)
Обратите внимание, что при установке других свойств все работает нормально.
1 ответ
Глядя на https://github.com/wicketstuff/core/blob/034ab2b1363d1f81609fec8362d8a80beb163227/minis-parent/minis/src/main/java/org/wicketstuff/minis/behavior/spinner/Spinner.java#L164-L192 Il4 не вижу, как это может работать. Он перебирает значения из свойств и проверяет их тип. Пункт else - это то, что должно охватывать ваш случай. Но проблема в том, что java.util.Properties может содержать только строковые ключи и значения, поэтому он всегда будет идти в предложении if, а не в else if и else.
Этот код нуждается в некоторых улучшениях! Не стесняйтесь создавать проблемы и отправить запрос на извлечение!