2013-03-04 7 views
0

내가 JGoodies 나중에 내가 ValueModel에 PropertyChangeListener를 추가 코드의 버퍼링 된 JGoodies 형식의 텍스트 필드를 사용하여 속성 변경 이벤트를 수신 할 수 있습니까?

public static JTextField bindDoubleTextField(PresentationModel<?> adapter, String 

propertyName, boolean useBuffer) 
{ 
    ValueModel valueModel = getValueModel(adapter, propertyName, useBuffer); 
    DecimalFormat decimalFormat = new DecimalFormat("0.######"); 
    decimalFormat.setGroupingUsed(false); 
    JTextField textField = BasicComponentFactory.createFormattedTextField(valueModel, decimalFormat); 

    return textField; 
} 

에 빈 내 JTextField를 결합하는 방법을 가지고,하지만 난 JTextField를 포커스를 잃을 때 그것은 단지 이벤트를 수신합니다. 내가 타이핑 할 때 그 사건을받을 수 있습니까? 값이 원래 값과 다른지 여부에 따라 JTextField의 배경색을 설정할 수 있기를 원합니다. 내가 입력 할 때 커밋 된 값을 원하지 않는다. 단지 값이 마지막 커밋 된 값과 다른지 여부를 감지하기를 원할 뿐이다.

답변

0

BasicComponentFactory.createTextField (ValueModel, boolean)를 사용하는 것이 더 나을 것입니다. 이렇게하면 두 번째 인수에 false를 전달할 수 있으며 입력 할 때 커밋이 발생합니다. 하지만 직접 포맷팅 및 유효성 검사를 수행하거나 JGoodies 유효성 검사 API를 사용해야합니다.

JGoodies는 귀하가 사용할 수있는 모든 문서 또는 다른 형식 지정자와 충돌합니다.