为什么 java 中的 JTextfield 在运行时不显示文本?

Why doesn't JTextfield in java display text at runtime?

希望你一切都好!

希望您理解我的 Java 问题...我已经创建了一个 JFrame window 来显示文本,但它不会在 运行 时显示(因为它应该)除非我最大化帧 window.

看不懂?

这是一些代码:

package test;

import javax.swing.*;

class Test{

    private String x;

    private Test() {
        x="150";
    }

    public static void main(String[] args) {

        Test o1 = new Test();


        JTextField l = new JTextField(o1.x, JTextField.CENTER);
        l.setAlignmentX(0);
        l.setAlignmentY(0);

        JFrame window = new JFrame("Hello World!");
        window.setSize(800, 600);
        window.setResizable(true);
        window.setVisible(true);
        window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        window.add(l);

        }

}

改变框架的大小(通过最大化它)将导致它被重新绘制。它需要重新绘制的原因是您在使其可见后向其添加了内容。

相反,您可以将 window.setVisible(true); 移到末尾,这样您就不会显示 window,直到您添加了所有内容。