Lớp JTextArea trong Java Swing

Lớp JTextArea trong Java Swing được sử dụng để tạo một khu vực dành cho text. Nó là một khu vực gồm nhiều dòng và chỉ hiển thị thuần text. Dưới đây là cú pháp khai báo của lớp javax.swing.JTextArea:

public class JTextArea extends JTextComponent

Lớp này kế thừa các phương thức từ các lớp sau:

  • javax.swing.text.JTextComponent
  • javax.swing.JComponent
  • java.awt.Container
  • java.awt.Component
  • java.lang.Object

Các constructor của lớp JTextArea trong Java Swing

JTextArea(): Tạo một TextArea mới.

JTextArea(String s): Tạo một TextArea mới với text đã cho.

JTextArea(int row, int column): Tạo một TextArea trống, mới với số hàng và cột đã cho.

JTextArea(String s, int row, int column): Tạo một TextArea mới với text, số hàng và cột đã cho.


Các phương thức được sử dụng phổ biến của lớp JTextArea trong Java Swing

1. public void setRows(int rows): Được sử dụng để thiết lập số hàng đã cho.

2. public void setColumns(int cols): Được sử dụng để thiết lập số cột đã cho.

3. public void setFont(Font f): Được sử dụng để thiết lập font đã cho.

4. public void insert(String s, int position): Được sử dụng để chèn text vào vị trí đã cho.

5. public void append(String s): Được sử dụng để phụ thêm text đã cho vào cuối tài liệu.


Chương trình ví dụ đơn giản đầu tiên về lớp JTextArea

package vn.viettuts.swing;
 
import java.awt.Color;
 
import javax.swing.JFrame;
import javax.swing.JTextArea;
 
public class JTextAreaExam1 {
    JTextArea area;
    JFrame f;
 
    JTextAreaExam1() {
        f = new JFrame("Vi du JTextAreaExam - Java Swing");
 
        area = new JTextArea(300, 300);
        area.setBounds(10, 30, 300, 300);
 
        area.setBackground(Color.gray);
        area.setForeground(Color.white);
 
        f.add(area);
 
        f.setSize(400, 400);
        f.setLayout(null);
        f.setVisible(true);
    }
 
    public static void main(String[] args) {
        new JTextAreaExam1();
    }
}

Chạy chương trình trên cho kết quả như sau:


Chương trình ví dụ khác về lớp JTextArea

package vn.viettuts.swing;
 
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
 
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
 
public class JTextAreaExam2 {
 
    private JFrame mainFrame;
    private JLabel headerLabel;
    private JLabel statusLabel;
    private JPanel controlPanel;
 
    public JTextAreaExam2(){
       prepareGUI();
    }
 
    public static void main(String[] args) {
        JTextAreaExam2 swingDemo = new JTextAreaExam2();
        swingDemo.showTextAreaDemo();
    }
 
    private void prepareGUI() {
        mainFrame = new JFrame("Vi du JTextAreaExam - Java Swing");
        mainFrame.setSize(400, 300);
        mainFrame.setLayout(new GridLayout(3, 1));
        mainFrame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent windowEvent) {
                System.exit(0);
            }
        });
        headerLabel = new JLabel("", JLabel.CENTER);
        statusLabel = new JLabel("", JLabel.CENTER);
        statusLabel.setSize(350, 100);
        controlPanel = new JPanel();
        controlPanel.setLayout(new FlowLayout());
        mainFrame.add(headerLabel);
        mainFrame.add(controlPanel);
        mainFrame.add(statusLabel);
        mainFrame.setVisible(true);
    }
 
    private void showTextAreaDemo() {
        headerLabel.setText("Control in action: JTextArea");
        JLabel commentlabel = new JLabel("Comments: ", JLabel.RIGHT);
        final JTextArea commentTextArea = new JTextArea(
                "Huong da su dung JTextArea\n" + "Java Swing.", 5, 20);
        JScrollPane scrollPane = new JScrollPane(commentTextArea);
        JButton showButton = new JButton("Show");
        showButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                statusLabel.setText(commentTextArea.getText());
            }
        });
        controlPanel.add(commentlabel);
        controlPanel.add(scrollPane);
        controlPanel.add(showButton);
        mainFrame.setVisible(true);
    }
}

Chạy chương trình trên cho kết quả như sau:

Related Posts
ActionListener trong Java Swing

Lớp xử lý ActionEvent nên triển khai interface ActionListener. Đối tượng của lớp đó phải được đăng ký với một Read more

Kiến thức cơ bản về đối tượng ‘JFileChooser’ trong JAVA SWING

JFileChooser là một thành phần của giao diện người dùng trong Java Swing được sử dụng để chọn và quản Read more

Lớp JFrame trong Java Swing

Container là thành phần chủ chốt trong các thành phần của SWING GUI. Một Container cung cấp một không gian, Read more

Hãy bình luận đầu tiên

Để lại một phản hồi