我创建了一个应用程序,并使用Netbeans的家伙摇摆构建器制作了一个简单的gui。 我创建了一个jtextfield和一个jlabel。 jlabel放在jtextfield上,但在开始时不可见。
这是我的问题。当我运行我的应用程序时,我可以在jtextfield中输入文本。这没有问题。之后我用一个按钮激活我的jlabel。 jlabel显示(在我想要的jtextfield之上)。当我停用jlabel时,它会消失,但我的输入文本也消失了。实际上它是隐藏的,因为当我选择jtextfield时,文本的部分区域再次开始出现。此外,当我开始在jtextfield中再次写文本时,我之前的所有文本都会再次出现。当我在jtextfields上显示/消除jlabel时,是否有某种方法可以再次更新字段或显示它们?或者这是一些什么样的错误?
我没有为此提供代码,因为我创建的简单程序中没有涉及高级编程。
我希望有人可以帮我解决这个问题。
答案 0 :(得分:0)
您可以使用
JFrame.validate();
在删除JLabel后刷新UI,然后它应该正确显示JTextField ...
如果这不起作用,您也可以尝试:
JPanel.setVisible(假);
JPanel.setVisible(真);
(假设您在程序中使用JPanel) 这也会刷新您的UI
然而,如果您添加代码以便我们可以看到您的错误
,那会更简单答案 1 :(得分:0)
我自己已经解决了这个问题。 看来我的文本字段没有正确分层;)