티스토리 뷰


자바로 GUI를 만들때 로그창을 JTextArea로 만들려면

1, JTextArea가 스크롤 가능하게하고

2. 로그가 발생하면 JTextArea 뒤에 내용을 붙이고 스크롤을 맨 아래로 내리면 된다.


1. JTextArea에 스크롤 넣기

: 자바 JTextArea에 스크롤을 넣는 방법은, JScrollPane안에 JTextArea를 넣으면 된다.

JTextArea txtLog = new JTextArea();

JScrollPane scrollPane = new JScrollPane(txtLog);

contentPane.add(scrollPane);

* 주의 : JTextArea.setPreferredSize를 설정하면 스크롤바가 생기지 않는다.


2. JTextArea에 내용 붙여넣기 + 맨 아래로 스크롤하기

: JTextArea txtLog가 JFrame를 확장하는 클래스의 멤버변수라 하면 다음과 같은 함수를 만들어주면 된다.

void addLog(String log)

{

  txtLog.append(log + "\n");  // 로그 내용을 JTextArea 위에 붙여주고

  txtLog.setCaretPosition(txtLog.getDocument().getLength());  // 맨아래로 스크롤한다.

}

* 로그가 발생할때마다 이 함수를 호출하여 로그 창의 뒤에 로그가 붙여지도록 하면 된다.








: 아래의 화면에서 Log 아래의 폼이 JTextArea이다.




























: Log가 추가됨에 따라 스크롤바가 생겨서 내려가는 것을 볼 수 있다.
























끝.



공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함