JTextArea 未出现在 JFrame 中 - Java

JTextArea not appearing in JFrame - Java

我正在创建一个简单的 GUI,其中包含完整的 window (J)TextArea。我创建了一个 JFrame window 和一个 JTextArea 文本区域并设置了两者。此外,我创建了一些颜色和我想在文本区域使用的字体。

运行 class 后,window 按预期弹出,但文本区域不存在。

我已经将文本区域设置为可见,所以不会有问题。

代码:

import java.awt.Color;
import java.awt.Font;

import javax.swing.JFrame;
import javax.swing.JTextArea;

public class GUI {

    public static void main(String[] args) {

        //create and set up window
        JFrame window = new JFrame("Console");

        window.setSize(800, 500);
        window.setVisible(true);
        window.setLocationRelativeTo(null);

        //create fonts and colors
        Color gray = new Color(34, 34, 34);
        Color lightGray = new Color(207, 191, 173);
        Font consolas = new Font("Consolas", Font.PLAIN, 15);

        //create and set up text area
        JTextArea text = new JTextArea();

        text.setSize(800, 500);
        text.setVisible(true);

        //text area font and colors
        text.setBackground(gray);
        text.setForeground(lightGray);
        text.setFont(consolas);

        text.append("Text");

    }   
}

结果是一个名为 'Console' 的空白 window。

如何修复 JTextArea 使其显示?

您应该使用 add- 方法将 JTextArea 添加到 JFrame window.add(text);

还有一点就是添加后边框可见。 window.setVisible(true); 在最后一行。因为有时会出现奇怪的布局错误。