intento de Java para mutar en la notificación
Tengo dos formas de interfaz de usuario de swing y un módulo que ambos miran.
Cada interfaz de usuario agrega un escucha al cambio de un atributo y actualiza su propio campo de texto cuando se produce un cambio.
basiccaly - ambos deben actualizar el módulo y actualizarse a partir de él. ¿Hay una manera simple de hacerlo sin un marco vinculante?
Así es como lo hago (pero sigo intentando intentar mutar en la notificación):
En la actualización de mi textField
<code> myTextField.getDocument().addDocumentListener(new TFDocumentListener() { protected void userChangedTF() { Float value = myTextField.getValue(); if (value != null) { myObj.setMyAttribute(value); } } }); </code>
aún en la interfaz de usuario - registrar el cambio
<code> myObj.addMyAttributeChangedListener(new ValueChangeListener<Float>() { @Override public void valueChanged(Float value) { if (!myTextField.isFocusOwner()) { myTextField.setValueIn(value); } } }); </code>
en el módulo - cuando se produce setMyAttribute - llama a esta función
<code>private void notifyIntervalChanged(float newValue) { for (ValueChangeListener valueChangeListener : intervalChangedListenersList) { valueChangeListener.valueChanged(newValue); } } </code>
y declaré
<code>public interface ValueChangeListener<T> { void valueChanged(T Value) } </code>