Standard IntegerStringConverter
verstehen nulls:
ObjectProperty<Integer> objP = new SimpleObjectProperty<>();
stringProp.bindBidirectional(objP, new IntegerStringConverter());
objP.setValue(null); // stringProp == ""
stringProp.setValue(""); // objP == null
Wenn Sie ein anderes Verhalten möchten, können Sie Ihren eigenen Konverter machen:
ObjectProperty<Integer> objP = new SimpleObjectProperty<>();
stringProperty.bindBidirectional(objP, new StringConverter<Integer>() {
@Override
public String toString(Integer number) {
return number == null ? "NULL" : number.toString();
}
@Override
public Integer fromString(String string) {
return string.equals("NULL") ? null : Integer.valueOf(string);
}
});
// both works:
objP.setValue(null);
objP.setValue(100);
@CloseVoter Könnten Sie den Grund erklären stimmen zu schließen? Wenn das eine dumme Frage ist, erkläre einfach, ich werde es selbst löschen, um die Gemeinschaft nicht zu stören. –