2012-07-02 41 views
2

我試圖使用jTextPane1.setText("xxx xxxx xxx xxxxx xx xxx xxxx xxx etc...");,但JTextPane不會自動換行,而只是在一行中顯示所有文本。 這將是有趣的支持jTextPane1調整過自動換行...JTextPane - 動態文字換行

所以我的問題是... 如何使JTextPane支持自動換行?

+0

使用一個JTextArea – ChadNC

+1

,因爲我需要動力高度的支持,我不使用的JTextArea。 – user592704

+0

我不是很確定如何使JTextArea支持行++ :( – user592704

回答

1

嘗試使用JTextArea並在其實例上調用setWrapStyleWord(true);這應該做你所需要的。

編輯:

如果您需要使用JTextPane作爲一項要求(你說你這樣做),然後看看一個類似的問題,我發現了答案應該會有所幫助:How is word-wrapping implemented in JTextPane, and how do I make it wrap a string without spaces?

+0

Emm ...問題是關於JEditorPane而不是JTextPane :(你的意思是使用JEditorPane代替? – user592704

+0

沒有第一個鏈接討論使用JTextPanes,但是,是的,JEditor也可以這樣做如在答案 –

+0

@ user592704的第二個鏈接中所見,此鏈接也可能有所幫助:http://stackoverflow.com/questions/8980792/is-it-possible-for-jtextpane-to-have-columns-and-rows –

1

爲什麼不使用JTextArea而不是窗格?

http://docs.oracle.com/javase/1.5.0/docs/api/

公共無效setWrapStyleWord(布爾字)

設置如果文本區要換行包裝使用的樣式。如果設置爲true,則行將被包裹在單詞邊界(空格)處,如果它們太長而不適合分配的寬度。如果設置爲false,則線條將被包裹在字符邊界處。默認情況下,該屬性爲false。參數:word - 指示是否應將字邊界用於換行。另請參見:getWrapStyleWord()

+0

因爲我對文字窗格動態行++支持感興趣。不是滾動 – user592704

1

我遇到同樣的問題,David Kroukamp的解決方案非常有幫助。我把它改成JTextArea中,並設置以下屬性,如本tutorial描述:

textArea.setLineWrap(true); 
    textArea.setWrapStyleWord(true);