剛剛檢查了默認的轉換器:它們不處理空/空,你必須實現一個可以做和設置綁定。喜歡的東西,看到取消對轉換器設定的區別:
@SuppressWarnings({ "rawtypes", "unchecked" })
private void bind() {
BindingGroup context = new BindingGroup();
AutoBinding firstBinding = Bindings.createAutoBinding(UpdateStrategy.READ_WRITE,
// this is some int property
this, BeanProperty.create("attempts"),
fields[0], BeanProperty.create("text"));
context.addBinding(firstBinding);
// firstBinding.setConverter(INT_TO_STRING_CONVERTER);
context.bind();
}
static final Converter<Integer, String> INT_TO_STRING_CONVERTER = new Converter<Integer, String>() {
@Override
public String convertForward(Integer value) {
return Integer.toString(value);
}
@Override
public Integer convertReverse(String value) {
if (value == null || value.trim().length() == 0) return 0;
return Integer.parseInt((String) value);
}
};
聽起來像轉換字符串 - >號碼不能處理空/空輸入(其中大部分格式化不能,你必須告訴他們或你轉換器接受一個0) – kleopatra
我還是新的beanbinding。你能告訴我樣品轉換課程如何做到這一點嗎? –
我認爲,當JTextField中沒有任何字符時(前面有一些字符時),JtextField的值是「」不爲空或爲空。這就是我的想法和不知道確切的reasone。 –