JTextArea, 텍스트 영역 컴포넌트
JTextArea
JTextArea를 이용하면 여러 줄의 문자열을 입력받을 수 있는 창(텍스트영역)을 만들 수 있습니다. 창의 크기보다 많은 줄과 문자를 입력할 수 있지만 스크롤바를 지원하지 않습니다. JTextArea 컴포넌트를 JScrollPane에 삽입되어야 스크롤바 자원을 받을 수 있습니다.
JTextArea 컴포넌트의 생성
텍스트명의 컴포넌트의 생성자는 다음과 같습니다.
JTextArea() // 빈 텍스트입력
JTextArea(int rows, int cols) // 입력 창이 rows x cols 개의 문자 크기만 텍스트 입력
JTextArea(String text) // text 문지열로 초기화된 텍스트 영역
JTextArea(String text, int rows, int cols) // 입력 창이 rows * cols개의 문자 크기이며 text 문자열로 초기화된 텍스트영역
JTextArea 컴포넌트 생성 예
container.add(new JScrollPane(new JTextArea("hello", 7, 20)));

JTextArea 컴포넌트 생성
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
public class TextAreaEx extends JFrame {
private JTextField tf = new JTextField(20);
private JTextArea ta = new JTextArea(7, 20);
public TextAreaEx() {
setTitle("텍스트영역 만들기 예제");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.add(new JLabel("입력 후 <Enter> 키를 입력하세요"));
add(tf);
c.add(new JScrollPane(ta));
// 텍스트필드에 <Enter> 키 입력 때 발생하는 Action 이벤트의 리스너 등록
tf.addActionListener(new AbstractAction() {
public void actionPerformed(ActionEvent e) {
JTextField t = (JTextField) e.getSource();
ta.append(t.getText() + "\n"); // 텍스트 필드의 문자열을 텍스트 영역 창에 추가
t.setText(""); // 현재 텍스트필드에 입력된 내용 지우기
}
});
setSize(300, 300);
setVisible(true);
}
public static void main(String[] args) {
new TextAreaEx();
}
}
[실행결과]


'프로그래밍 언어 > JAVA' 카테고리의 다른 글
| JComboBox<E>, 콤보박스 컴포넌트 (6) | 2025.07.12 |
|---|---|
| JList<E>, 리스트 컴포넌트 (3) | 2025.07.10 |
| JTextField, 텍스트필드 컴포넌트 (0) | 2025.07.04 |
| JRadioButton, 라디오버튼 컴포넌트 (1) | 2025.07.01 |
| JCheckbox, 체크박스 컴포넌트 (2) | 2025.06.28 |