-1
以下のサンプルコードによると、Java FX Bindingsはデフォルトでは貪欲でないようです。Javafx greedy binding
assertEquals(2,calledEffect);
は が、
assertEquals(2,keepBinding.get())
ないが動作しません。
バインディングが自動的にアクティブになって、欲張りな動作をしていることを確認するにはどうすればよいですか?
long calledEffect=0;
private LongBinding keepBinding;
public long callMe(long value) {
calledEffect=value+1;
return calledEffect;
}
@Test
public void testBinding() {
SimpleLongProperty lp = new SimpleLongProperty();
lp.setValue(4711);
keepBinding=Bindings.createLongBinding(()->callMe(lp.get()),lp);
lp.setValue(1);
//assertEquals(2,calledEffect);
assertEquals(2,keepBinding.get());
}