2011-03-04 61 views
1

我想創建一個JTree,並且JTree的每個節點都有一個名稱,當您單擊節點時,textarea將被展開,我在網上做了一些研究,但沒有找到任何東西有用。誰能告訴我這是否可能實現?如果是的話,你可以發佈一個簡單的代碼示例嗎?JTextarea作爲JTree的節點

回答

1

您不需要JTextAreas,JTree具有內置的功能以使節點可編輯。看看這個例子:

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

我只是嘗試了一下,以確保它的工作原理。編譯&運行。點擊其中一個節點,然後按F2進行編輯。如果您有任何問題或者這不是您正在尋找的內容,請發表評論。

+0

謝謝eznme!但是,我想我沒有清楚地表達我的問題,我想構建的樹包含用戶創建的一些註釋和註釋,樹的節點名稱將是註釋者的名稱(或註釋的標題) ,在你提供的例子中,它只允許我編輯節點的名稱,我希望能夠做到:當用戶擴展一個節點時,textarea得到擴展,用戶可以在文本區域輸入他們的評論。我不確定這是否使我的問題更清晰,請不要猶豫,如果它仍然讓您感到困惑,請發表評論! – JYH 2011-03-04 21:45:15

+0

啊,我明白了。你需要的是一個自定義的TreeCellRenderer,看看這裏:http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/tree/TreeCellRenderer.html – 2011-03-04 21:58:06

+1

這是困難的壽,如果你想一些更容易實現的東西可以在樹的下方顯示文本區域,然後使用TreeSelectionEvents(http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/event/TreeSelectionListener.html)更改當前編輯哪個節點的額外文本。 – 2011-03-04 22:00:22