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

时间:2020-05-31 21:03:23

标签: java swing jtextfield

希望你一切都好!

希望您理解我的Java问题...我创建了一个JFrame窗口,其中包含要显示的文本,但是除非最大化了Frame窗口,否则它不会在运行时显示(应显示)。

不明白吗?

这是一些代码:

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);

        }

}

1 个答案:

答案 0 :(得分:2)

更改框架的大小(通过使其最大化)将导致其重新粉刷。需要重新粉刷的原因是您在将其显示为可见之后添加了内容。

相反,您可以将window.setVisible(true);移到末尾,这样,直到您向其中添加了所有内容后,您才能显示该窗口。