-1

所以我在笔记本电脑上安装了 Eclipse,并开始了一个新的学校项目。我的程序运行良好,直到我添加了一个 JTextfield,当我这样做时,它只会显示一个空的灰色 JFrame,而不是包含我所有组件的 JFrame。如果我删除带有 JTextfield 的代码行,它会在我运行时再次显示。同样对于 JTextfield 行,JFrame 是灰色的,直到我调整窗口大小,然后一切都显示正常.. 但我不想每次运行它时都调整我的 JFrame 大小.. 首先我运行的是 Java 7,所以降级为 Java 6,但我仍然有同样的问题......

所以添加这个:

JTextField txtMyField = new JTextField(10);
myFrame.add(txtMyField);

会把事情搞砸,删除这两行代码将使它再次工作。我尝试制作一个新项目,它工作正常,直到我添加一个文本字段。我在 Eclipse 中尝试了一个新的工作区,在我添加一个文本字段之前工作正常。

这里发生了什么?

4

2 回答 2

1

myjframe.setVisible(true);试试这个,在添加所有摆动组件后使 jframe 可见。

于 2012-10-29T01:30:55.987 回答
0

但是,如果没有您的确切代码,我只能假设。

如果你调用 myFrame.add(txtMyField); 您将其添加到与 JPanel 相同的级别。尝试这个

JPanel panel = new JPanel();

JTextField field1 = new JTextField(10);
panel.add(field1)

JTextField field2 = new JTextField(10);
panel.add(field2);

add(panel);

这会将 2 个文本字段添加到面板,并将面板添加到框架。默认情况下,面板将作为 FlowLayout 将它们浮动在一起,请参见此处的其他布局。

于 2012-09-14T15:01:46.213 回答