DefaultTreeSelectionModel
DefaultTreeSelectionModel (TreeSelectionModel의 기본 구현)
DefaultTreeSelectionModel은 TreeSelectionModel의 기본 구현이에요. 선택 영역의 경로(paths)가 변경될 때마다 리스너가 알림을 받지만, 행(rows) 변경은 알림을 받지 않아요. 행 변경을 추적하려면 트리의 확장 이벤트에 대한 리스너가 되어 거기서 변경을 검사하는 것을 고려해볼 수 있어요.
본문
resetRowSelection은 선택된 경로를 업데이트하는 어떤 메서드에서든 호출돼요. 선택을 허용할 내용을 필터링하기 위해 이 메서드들을 서브클래스화한다면, super를 호출하지 않는 경우 반드시 resetRowSelection을 호출해야 해요.
알려진 직접 서브클래스는 JTree.EmptySelectionModel이에요. 이 클래스는 Cloneable, Serializable, TreeSelectionModel을 구현해요.
필드
protected SwingPropertyChangeSupport changeSupport— 등록된 리스너에게 메시지를 보내는 데 사용해요.protected int leadIndex— 선택 영역에서 lead 경로의 인덱스예요.protected TreePath leadPath— 마지막으로 추가된 경로예요.protected int leadRow— lead 행이에요.protected EventListenerList listenerList— 이벤트 리스너 목록이에요.protected DefaultListSelectionModel listSelectionModel— 목록 선택 모델 유지를 담당해요.protected RowMapper rowMapper— 주어진 경로에 대한 행을 제공해요.protected TreePath[] selection— 선택된 경로들이에요.
경고: 이 클래스의 직렬화된 객체는 향후 Swing 릴리스와 호환되지 않을 수 있어요. 현재 직렬화 지원은 같은 버전의 Swing을 실행하는 애플리케이션 간 단기 저장이나 RMI에 적합해요. 1.4부터 모든 JavaBeans의 장기 저장 지원이 java.beans 패키지에 추가됐어요. XMLEncoder를 참고하세요.