把JTextArea當做日誌顯示介面時,我們需要限制其行數。
如我們需要把JTextArea顯示的行數控制在200行以內,代碼如下:
/**<br /> * This method initializes jTextArea<br /> *<br /> * @return javax.swing.JTextArea<br /> */<br />private JTextArea getJTextArea() {<br />if (jTextArea == null) {<br />jTextArea = new JTextArea();<br />jTextArea.getDocument().addDocumentListener(new DocumentListener() {<br />public void insertUpdate(DocumentEvent e) {<br />SwingUtilities.invokeLater(new Runnable() {<br />public void run() {<br />if (jTextArea.getLineCount() >= 200) {<br />int end = 0;<br />try {<br />end = jTextArea.getLineEndOffset(100);<br />} catch (Exception e) {<br />}<br />jTextArea.replaceRange("", 0, end);<br />}<br />}<br />});<br />}<br />public void removeUpdate(DocumentEvent evt) {<br />}<br />public void changedUpdate(DocumentEvent evt) {<br />}<br />});<br />}<br />return jTextArea;<br />}