|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjava.util.EventObject
javax.swing.event.TreeModelEvent
public class TreeModelEvent
트리 모델의 변경을 기술하는 정보를 캡슐화해, 트리 모델 청취자로 변경을 통지합니다. 상세 및 예는, 「The Java Tutorial」의「How to Write a Tree Model Listener」섹션을 참조해 주세요.
경고: 이 클래스의 직렬화 된 객체는, 향후의 Swing 릴리스와 호환은 아니게 될 예정입니다. 현재의 직렬화의 지원는, 단기간의 운용이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. JDK Version 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)
는, Vector 가 빈 상태(empty) 때에서도 사용할 수가 있습니다.
null
로서 지정합니다.
source
- 이벤트의 생성을 위한 Object
(일반적으로, 이벤트 객체의 생성측은
값에 this
를 건네준다)path
- 변경된 항목의 부모에게로의 패스를 나타내는 Object 의 배열.
배열의 최초의 요소는 루트 노드에 포함되고 있다
Object, 마지막 요소는 친노드에 포함되고 있다
ObjectchildIndices
- 삭제된 항목의 인덱스치를 지정하는 int
배열.
인덱스는, 최하정도로부터 최상정도에
향해 소트 된 순서일 필요가 있는children
- 삽입, 삭제, 또는 변경된 객체를
포함하는 Object 의 배열TreePath
public TreeModelEvent(Object source, TreePath path, int[] childIndices, Object [] children)
TreeModelEvent(Object, Object[], int[], Object[])
를 참조해 주세요.
source
- 이벤트의 생성을 위한 Object
(일반적으로, 이벤트 객체의 생성측은
값에 this
를 건네준다)path
- 변경된 항목의 부모에게로의 패스를
지정하는 TreePath 객체childIndices
- 변경된 항목의 인덱스치를 지정하는 int
배열children
- 삽입, 삭제, 또는 변경된 객체를
포함하는 Object 의 배열TreeModelEvent(Object, Object[], int[], Object[])
public TreeModelEvent(Object source, Object [] path)
주:
JTree 는, 지정한 노드아래의 모든 노드를 수납하므로, 직접적인 아이만이 가시가 됩니다.
source
- 이벤트의 생성을 위한 Object
(일반적으로, 이벤트 객체의 생성측은
값에 this
를 건네준다)path
- 변경된 서브 트리의 루트에의 패스를 나타내는 Object 의 배열.
배열의 최초의 요소는 루트 노드에 포함되고 있다
객체, 마지막 요소는 변경된 노드에 포함되고 있다
객체TreePath
public TreeModelEvent(Object source, TreePath path)
TreeModelEvent(Object, Object[])
를 참조해 주세요.
source
- 이벤트의 생성을 위한 Object
(일반적으로, 이벤트 객체의 생성측은
값에 this
를 건네준다)path
- 변경점에의 패스를 나타내는 TreePath 객체.
DefaultTreeModel 에서는,
이 객체에는 사용자 데이터 객체의 배열이 포함된다.
다만, TreePath 의 서브 클래스는 완전히 다른 메카니즘 (예를 들어 노드 ID 번호)
(을)를 사용하는 일도 가능TreeModelEvent(Object, Object[])
메소드의 상세 |
---|
public TreePath getTreePath()
getChildIndices
를 사용해 영향을 받은 노드의 리스트를 가져옵니다.
유일한 예외는, 루트를 지정하는 treeNodesChanged 이벤트의 경우입니다. 이 경우는 루트가 돌려주어져getChildIndices
는 null 를 돌려줍니다.
TreePath.getLastPathComponent()
public Object [] getPath()
public Object [] getChildren()
getChildIndices
로 지정된 위치에 있는,getPath
로 나타나는 노드의 아이의 객체를 돌려줍니다. 이것이 삭제 이벤트인 경우, 반환되는 객체는 그 친노드의 아이가 아닙니다.
getPath()
,
getChildIndices()
public int[] getChildIndices()
int
배열public String toString()
EventObject
내의 toString
|
JavaTM Platform Standard Ed. 6 |
|||||||||
전의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.