JAVA 如何使JScrollPane中的JTextArea自動滾動到最后一行?


1、要使JTextArea帶有滾動條,需將JTextArea對象添加到JScrollPane中。

JTextArea logArea = new JTextArea(15, 35); //創建JTextArea對象
logArea.setWrapStyleWord(true); //換行方式:不分割單詞
logArea.setLineWrap(true); //自動換行
//給JTextArea添加垂直滾動條
JScrollPane logScroll = new JScrollPane(logArea,ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);


 

 2、要使JTextArea在更新內容時自動滾動到最后一行,可以通過對JScrollBar進行操作。

static JScrollBar scrollBar=logScroll.getVerticalScrollBar();
//每次需要在JTextArea增加String時,調用如下方法
private void refreshTextArea(String text){ logArea.append(text);
//在更新logArea后,稍稍延時,否則getMaximum()獲得的數據可能不是最后的最大值,無法滾動到最后一行
try { Thread.sleep(100); } catch (InterruptedException ex) { Logger.getLogger(TestServer.class.getName()).log(Level.SEVERE, null, ex); } scrollBar.setValue(scrollBar.getMaximum()); }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM