2011-05-05 4 views
0

JFormattedField에 두 개의 propertyChangeListener를 추가 할 수 있으며 순서대로 실행해야합니까?두 개의 propertyChangeListener를 순서대로 추가 할 수 있습니까

+4

결과적으로 한 속성 수신기에서 두 메서드를 호출하지 않는 이유는 무엇입니까? –

+0

알림 시퀀스는 기술적으로 정의되어 있지 않습니다. 사전 정의 된 순서로 이벤트를 전달하는 일종의 컨트롤러가 해결할 수 있습니다. 그러나 진짜 질문은 : 왜 당신이 그것을 필요로한다고 생각합니까? 당신이 그것을 필요로하지 않도록 재 설계에 대해 생각하십시오. – kleopatra

답변

0

나는 이걸 보면서 내 뇌를 깨뜨렸다.

궁극적으로 여러분은 Component의 proppertyChange 처리를 사용하게 될 것입니다.

PropertyChangeSupport 개체를 사용하는 경우 궁극적으로 sun.awt.EventListenerAggregate을 사용합니다. 여기에는 PropertyChangeListeners 배열이 포함됩니다.

이벤트가 발생하면 리스너는 집계에 추가 된 순서대로 알림을받습니다.

+2

이것이 구현에 의존하는 행동이라고 생각하지 마십시오. 알림없이 향후 버전에서 변경 될 수 있습니다. – Axel

+0

동의. 하지만 기본 PropertyChangeSupport가 FIFO 동작을 사용한다고 생각합니다. @Axel은 매우 중요한 포인트입니다. 이것은 거의 또는 전혀 통지하지 않고 변경 될 수있는 sun.awt 클래스입니다. 위에서 언급 한 클래스는 Java 1.5에서 소개되었습니다 (@since javadoc annotation에 따라). 이를 염두에두고 PropertyChangeSupport 객체의 히스토리를보고 어떻게 진화했는지 확인할 수 있습니다. –

관련 문제