반응형

출처: 

http://stackoverflow.com/questions/1052473/scrollbars-in-jtextarea

http://stackoverflow.com/questions/10177183/java-add-scroll-into-text-area

http://unikys.tistory.com/211


예제를 공부하고 나온 코드에 만족할 쯤에, 이 프로그램에 스크롤이 없다는 것이 조금 아쉬웠다.

그래서 자바 책을 뒤져서 JScrollPane 객체에 넣으면 된다는 것을 확인하였다.

그런데 막상 내 나름대로 했다고 생각해서 확인을 해보니 스크롤은 커녕

이미 넣었던 JTextArea도 사라져서 보이지 않았다.


그래서 확인을 해보니 당연하겠지만 나의 코드가 잘 못 되어있었다.

이전 코드는 이렇게 작성되어 있었다.

JTextArea ta = new JTextArea();
JScrollPane sp = new JSCrollPane();

// 중략

sp.add(ta);


그래서 위의 링크들에 나온 대로 코드를 다음과 같이 수정했더니 원하는 대로 나왔다.


JTextArea ta = new JTextArea();
JScrollPane sp = new JScrollPane(ta);

// 중략

this.getContentPane().add(sp);


그리고 JTextArea에 내용이 추가될 때마다 스크롤을 내리지 않고 바로 보기 위해서는 다음 코드를 추가한다.


JTextArea ta = new JTextArea();

ta.setCaretPosition(ta.getDocument().getLength());


반응형
Posted by 애콜라이트
l

free counters