2011-03-04 4 views
1

JTree를 만들고 싶습니다. JTree의 각 노드에는 이름이 있습니다. 노드를 클릭하면 텍스트 영역이 확장되고 온라인에서 일부 조사했지만 아무것도 찾지 못했습니다. 유능한. 아무도이게 가능하다면 저에게 말할 수 있습니까? 그렇다면 간단한 코드 샘플을 올리시겠습니까?JTextarea를 JTree의 노드로 사용

답변

1

JTextAreas가 필요하지 않습니다. JTree는 노드를 편집 가능하게하는 기능을 내장하고 있습니다. 이 예를 살펴 : 난 그냥 작동하는지 확인하기 위해 그것을 밖으로 시도

http://www.roseindia.net/java/example/java/swing/JTreeEditable.shtml

. &을 실행하십시오. 노드 중 하나를 클릭 한 다음 F2 키를 눌러 편집하십시오. 질문이 있거나 찾고있는 것이 아닌 경우 의견을 말하십시오.

+0

감사합니다. 그러나, 나는 내 문제를 명확하게 표현하지 못했다고 생각한다. 내가 만들고자하는 나무는 사용자가 만든 주석과 주석을 포함하고 있으며, 나무의 노드 이름은 주석 자의 이름 (또는 주석의 제목) , 당신이 제공 한 예제에서는 노드 이름을 편집 할 수 있습니다. 사용자가 노드를 확장하면 텍스트 영역이 확장되고 사용자가 텍스트 영역에 주석을 입력하게됩니다. . 이것이 내 질문을 명확하게하는지 잘 모르겠다. 아직도 혼란 스럽다면 주저하지 말아주세요. – JYH

+0

아, 이해합니다. 필요한 것은 사용자 정의 TreeCellRenderer입니다. 여기를보십시오. http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/tree/TreeCellRenderer.html –

+1

원한다면 그건 어려운 일입니다. 더 쉽게 구현 된 것이 있다면 트리 아래에 텍스트 영역을 렌더링 한 다음 TreeSelectionEvents (http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/event/TreeSelectionListener.html)를 사용하십시오. 현재 편집중인 노드의 추가 텍스트를 변경합니다. –

관련 문제