0
ObjectProperty<Integer>
をIntegerProperty
に変換する方法があります。ここでは、次のとおりです。ObjectProperty <String>をJavaFXのStringPropertyに変換するには?
StringProperty
にObjectProperty<String>
を変換する類似の方法がないのはなぜ?変換する方法は?
ObjectProperty<Integer>
をIntegerProperty
に変換する方法があります。ここでは、次のとおりです。ObjectProperty <String>をJavaFXのStringPropertyに変換するには?
StringProperty
にObjectProperty<String>
を変換する類似の方法がないのはなぜ?変換する方法は?
Looking at the source for integerProperty
すべては双方向バインディング(およびファイナライズ時にバインド解除)です。
あなたはintegerProperty
が何をコピーして、StringProperty
を使用するように変更できます。
public static StringProperty makeStringProperty(final Property<String> property) {
Objects.requireNonNull(property, "Property cannot be null");
return new StringPropertyBase() {
{
bindBidirectional(property);
}
@Override
public Object getBean() {
return null; // Virtual property, no bean
}
@Override
public String getName() {
return property.getName();
}
@Override
protected void finalize() throws Throwable {
try {
unbindBidirectional(property);
} finally {
super.finalize();
}
}
};
}
それは内部のパッケージを使用していないので、私は少しここでそれを修正しました。
なぜこれを行う必要がありますか? 'StringProperty'と' ObjectProperty 'はどちらも' Property 'を実装しています。 'IntegerProperty'などの問題は、' Property '、' Property 'などではなく' Property 'を実装していることです。http://stackoverflow.com/questions/34620552/why-does-longproperty-implement -propertynumber-but-not-propertylongおよびhttps://bugs.openjdk.java.net/browse/JDK-8125218 –
Itai