SwingPropertyChangeSupport — 스윙 프로퍼티 변경 지원 클래스

SwingPropertyChangeSupport — 스윙 프로퍼티 변경 지원 클래스

SwingPropertyChangeSupport는 java.beans.PropertyChangeSupport의 하위 클래스로, 리스너 알림을 이벤트 디스패치 스레드에서만 하도록 보장하는 클래스입니다.

출처: Java API Reference

본문

public final class SwingPropertyChangeSupport extends PropertyChangeSupport

이 java.beans.PropertyChangeSupport의 하위 클래스는 기능이 거의 동일합니다. 유일한 차이는 SwingPropertyChangeSupport(sourceBean, true)로 생성할 때 리스너가 이벤트 디스패치 스레드(EDT)에서만 알림을 받도록 보장한다는 점입니다.

SwingPropertyChangeSupport

public SwingPropertyChangeSupport(Object sourceBean)

SwingPropertyChangeSupport 객체를 생성합니다.

  • 매개변수: sourceBean - 모든 이벤트의 원본으로 제공될 빈(bean)
  • 예외: NullPointerException - sourceBeannull인 경우

SwingPropertyChangeSupport

public SwingPropertyChangeSupport(Object sourceBean, boolean notifyOnEDT)

SwingPropertyChangeSupport 객체를 생성합니다.

  • 매개변수: sourceBean - 모든 이벤트의 원본으로 제공될 빈
  • 예외: NullPointerException - sourceBeannull인 경우
  • 버전: 1.6

firePropertyChange

public void firePropertyChange(PropertyChangeEvent evt)

모든 프로퍼티나 지정된 이름의 프로퍼티에 대한 변경을 추적하도록 등록된 리스너에게 프로퍼티 변경 이벤트를 발생시킵니다. 주어진 이벤트의 이전 값과 새 값이 같고 둘 다 null이 아니면 이벤트가 발생하지 않습니다. isNotifyOnEDT()가 true이고 이벤트 디스패치 스레드 밖에서 호출되면 이 구현은 SwingUtilities.invokeLater를 사용해 이벤트 디스패치 스레드에서 알림을 보냅니다. 이렇게 하여 리스너는 항상 이벤트 디스패치 스레드에서만 알림을 받습니다.

  • 재정의: PropertyChangeSupport 클래스의 firePropertyChange
  • 매개변수: evt - 발생시킬 PropertyChangeEvent
  • 예외: NullPointerException - evtnull인 경우
  • 버전: 1.6

isNotifyOnEDT

public boolean isNotifyOnEDT()

notifyOnEDT 프로퍼티를 반환합니다.

  • 반환값: notifyOnEDT 프로퍼티
  • 버전: 1.6

더 알아보기