java中TextArea和JTextArea的自動換行和滾動條
阿新 • • 發佈:2022-03-07
這幾天有些空閒,在做一個縮略詞的詞典。
要用到swing,也是許久沒有寫過swing構件的程式碼了,對於swing這把刀已經感覺很生疏了。
要用到一個文字顯示區,為了便於複製,我用了JTextArea。JTextArea本身預設的是不換行,不滾動條顯示。你設定完他的大小之後,他就只是顯示在這個視窗大小內的內容。
換行
這個實現起來比較容易:
1 JTextArea textAreaOutput; 2 textAreaOutput = new JTextArea("縮略詞詞典", 20, 43); 3 textAreaOutput.setSelectedTextColor(Color.RED); 4 textAreaOutput.setLineWrap(true); //啟用自動換行功能 5 textAreaOutput.setWrapStyleWord(true); // 啟用斷行不斷字功能
這樣子,無論是TextArea還是JTextArea都可以正常的進行換行了。
滾動條
實現起來,在TextArea和JTextArea中有所區別:
TextArea:
TextArea textArea; 2 textAreaOutput = new JTextArea("縮略詞詞典", 20, 43, TextArea.SCROLLBARS_VERTICAL_ONLY);
JTextArea:
JTextArea textAreaOutput; JPanel panelOutput; panelOutput = new JPanel(); panelOutput.add(new JScrollPane(textAreaOutput));
有人曾說swing是一把刀(http://www.iteye.com/topic/699515),這把刀平時可能用不著,比如專注於java web的monkey們,但是不免有時候需要一個小程式來幫助我們進行大專案的開發,這時候,swing可能就會用到了。當然不是個文字換行的小兒科問題。所以,我感覺swing這把刀一定要隨時的能上手,不能讓他鏽太久。