|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 모든 클래스 | ||||||||||
개요: 상자 | 필드 | constructor | 메소드 | 상세: 필드 | constructor | 메소드 |
java.lang.Object | +--java.util.EventObject | +--javax.swing.event.TreeModelEvent
트리 모델의 변경을 기술하는 정보를 캡슐화해, 트리 모델의 청취자로 변경을 통지합니다. 상세 및 예는 「The Java Tutorial」의「How to Write a Tree Model Listener」섹션을 참조해 주세요.
경고:
이 클래스의 직렬화 된 오브젝트는 향후의 Swing 릴리스와의 호환성이 없어집니다. 현재의 직렬화의 서포트는 단기 기억이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. JDK 버젼 1.4 이후, 모든 JavaBeans 의 장기 기억용 서포트는 java.beans
패키지에 추가되고 있습니다. 자세한 것은 XMLEncoder
를 참조해 주세요.
필드의 개요 | |
protected int[] |
childIndices
아이가 있던 위치를 지정하는 인덱스입니다. |
protected Object [] |
children
삭제된 아이입니다. |
protected TreePath |
path
변경된 노드의 부모에게로의 패스입니다. |
클래스 java.util. EventObject 에서 상속받은 필드 |
source |
생성자의 개요 | |
TreeModelEvent (Object source,
Object [] path)
노드 구조가 하등의 방법으로 변경되었을 때에, 이벤트를 생성하기 위해서 사용합니다. |
|
TreeModelEvent (Object source,
Object [] path,
int[] childIndices,
Object [] children)
노드가 변경, 삽입, 또는 삭제되었을 때에, 이벤트를 생성하기 위해서 사용합니다. |
|
TreeModelEvent (Object source,
TreePath path)
노드 구조가 하등의 방법으로 변경되었을 때에, 이벤트를 생성하기 위해서 사용합니다. |
|
TreeModelEvent (Object source,
TreePath path,
int[] childIndices,
Object [] children)
노드가 변경, 삽입, 또는 삭제되었을 때에, 이벤트를 생성하기 위해서 사용합니다. |
메소드의 개요 | |
int[] |
getChildIndices ()
아이 인덱스의 값을 돌려줍니다. |
Object [] |
getChildren ()
getChildIndices 에 의해 지정된 위치에서 getPath 에 의해 식별된 노드의 아이의 오브젝트를 돌려줍니다. |
Object [] |
getPath ()
이 이벤트가 랩 하는 TreePath 의 인스턴스로부터, 오브젝트의 배열을 취득하기 위한 간이 메소드입니다. |
TreePath |
getTreePath ()
treeStructureChanged 를 제외하는 모든 이벤트에 대해서, 변경된 노드의 부모를 돌려줍니다. |
String |
toString ()
이 오브젝트의 프로퍼티를 표시 및 식별하는 캐릭터 라인을 돌려줍니다. |
클래스 java.util. EventObject 에서 상속받은 메소드 |
getSource |
클래스 java.lang. Object 에서 상속받은 메소드 |
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait |
필드의 상세 |
protected TreePath path
protected int[] childIndices
protected Object [] children
생성자의 상세 |
public TreeModelEvent(Object source, Object [] path, int[] childIndices, Object [] children)
int
의 배열에 의해 지정됩니다. 배열내의 인덱스는 최하정도로부터 최상정도에의 차례일 필요가 있습니다.
변경의 경우, 모델의 인덱스는 현재 UI 로 표시되고 있는 항목의 인덱스에 정확하게 대응합니다. 그 결과, 인덱스의 차례가 올바른지 어떤지는 너무 중요하게는 되지 않습니다. 그러나, 복수의 삽입 또는 삭제의 나중에는 현재 UI 에 있는 항목은 모델내의 항목으로 대응하고 있습니다. 따라서, 삽입 또는 삭제에서는 인덱스를 적절히 지정하는 것이 중요해집니다.
삽입의 경우, 인덱스는 삽입 후의 트리의 「최종」상태를 나타냅니다. 인덱스는 적절한 순서로 지정할 필요가 있기 (위해)때문에, 가장 자연스러운 처리 방법은 최하정도의 인덱스로부터 최상정도로 향해 삽입을 실시한다고 하는 방법입니다. 처리를 진행시키면서, 삽입 위치를 지정하는 Integer
오브젝트의 Vector 를 증가시키고 나서, Vector 를 int
의 배열로 변환해, 이벤트를 생성합니다. 위치 인덱스가 0 이면, 노드는 리스트의 선두에 삽입됩니다. 위치 인덱스가 리스트의 사이즈와 같으면, 노드는 리스트의 마지막에 「삽입」즉 추가됩니다.
삭제의 경우, 인덱스는 삭제전의 트리의 「초기」상태를 나타냅니다. 인덱스는 적절한 순서로 지정할 필요가 있기 (위해)때문에, 가장 자연스러운 처리 방법은 삭제 카운터를 사용하는 방법입니다. 카운터를 0 에 초기화하고 나서, 리스트의 최하정도로부터 최상정도로 향해 처리를 실시합니다. 삭제를 실시할 때마다, 삭제 카운터의 현재가를, 삭제를 하는 인덱스 위치에 추가해,addElement()
를 사용해 그 결과를 삭제 위치의 Vector 에 추가합니다. 그 후로, 삭제 카운터치를 증가합니다. 이것으로, Vector 에 저장되는 인덱스 위치에는 이전의 모든 삭제의 결과가 반영되어 초기 상태의 트리에서의 각 오브젝트의 위치가 나타내집니다. 최상정도 인덱스로부터 최하정도 인덱스로 향해 처리를 실시해,insertElementAt(Integer, 0)
를 사용해 처리를 진행시키면서, 삭제 위치의 Vector 를 증가시킬 수도 있습니다. 어떻게 초기 위치의 Vector 를 생성해도, 이벤트 생성을 위해서(때문에) Integer
오브젝트의 Vector 를 int
의 배열에 변환할 필요가 있습니다.
주의:
DefaultTreeModel
클래스의 insertNodeInto
메소드와 같이, 인덱스가 벡터의 사이즈에 일치할 경우에 insertElementAt
를 Vector
에 추가합니다. 이 결과, 벡터가 비었을 경우에서도 insertElementAt(Integer, 0)
를 사용할 수 있게 됩니다.
this
를 건네준다
변경된 항목의 부모에게로의 패스를 지정하는 Object 의 배열. 배열의 최초의 요소는 루트 노드에 저장되고 있는 Object, 마지막 요소는 친노드에 저장되고 있는 Object
삭제된 항목의 인덱스치를 지정하는 int
의 배열. 인덱스는 최하정도로부터 최상정도로 향해 소트 된 순서일 필요가 있다
삽입, 삭제, 또는 변경된 오브젝트를 저장하는 Object 의 배열
TreePath
public TreeModelEvent(Object source, TreePath path, int[] childIndices, Object [] children)
? TreeModelEvent(Object, Object[], int[], Object[])
를 참조해 주세요.
이벤트의 생성을 처리하는 Object. 통상, 이벤트 오브젝트의 생성측은 값에 this
를 건네준다
변경된 항목의 부모에게로의 패스를 지정하는 TreePath 오브젝트
변경된 항목의 인덱스치를 지정하는 int
의 배열
삽입, 삭제, 또는 변경된 오브젝트를 저장하는 Object 의 배열
TreeModelEvent(Object, Object[], int[], Object[])
public TreeModelEvent(Object source, Object [] path)
this
를 건네준다
변경된 서브 트리의 루트에의 패스를 지정하는 Object 의 배열. 배열의 최초의 요소는 루트 노드에 저장되고 있는 Object, 마지막 요소는 변경된 노드에 저장되고 있는 Object
TreePath
public TreeModelEvent(Object source, TreePath path)
? TreeModelEvent(Object, Object[])
를 참조해 주세요.
이벤트의 생성을 처리하는 Object. 통상, 이벤트 오브젝트의 생성측은 값에 this
를 건네준다
변경점에의 패스를 지정하는 TreePath 오브젝트. DefaultTreeModel 에서는 이 오브젝트는 유저 데이터 오브젝트의 배열을 저장하지만, TreePath 의 서브 클래스에서는 예를 들어 노드 ID 번호 등, 완전히 별개의 기구를 사용하는 일도 가능
TreeModelEvent(Object, Object[])
메소드의 상세 |
public TreePath getTreePath()
getChildIndices
를 사용해 영향을 받은 노드의 리스트를 취득합니다.
유일한 예외는 루트를 지정하는 treeNodesChanged 이벤트의 경우입니다. 이 경우는 루트가 돌려주어져getChildIndices
는 null 를 돌려줍니다.
변경된 노드를 지정하는 TreePath 오브젝트
TreePath.getLastPathComponent()
public Object [] getPath()
public Object [] getChildren()
getChildIndices
에 의해 지정된 위치에서 getPath
에 의해 식별된 노드의 아이의 오브젝트를 돌려줍니다. 이것이 삭제 이벤트의 경우, 돌려주어진 오브젝트는 친노드의 아이가 아닙니다.
이벤트에 의해 지정된 아이를 저장하는 Object 의 배열
getPath()
,
getChildIndices()
public int[] getChildIndices()
int
의 배열
public String toString()
EventObject
내의 toString
|
JavaTM 2 Platform Std. Ed. v1. 4.0 |
||||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 모든 클래스 | ||||||||||
개요: 상자 | 필드 | constructor | 메소드 | 상세: 필드 | constructor | 메소드 |
Java, Java 2 D, 및 JDBC 는 미국 및 그 외의 나라에 있어서의 미국 Sun Microsystems, Inc. 의 상표 혹은 등록상표입니다.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.