在Java中使用JTextField对象

在Java中使用JTextField对象,java,swing,user-interface,jtextfield,Java,Swing,User Interface,Jtextfield,我承认这对你们中的许多人来说是一个愚蠢的问题!首先,我想说的是,就图形用户界面而言,我的java知识很低!我对文本字段有问题。我想获取一个JTextField对象的值,并在另一个JTextField对象中显示它!这是我尝试过的,但它不起作用 textField2.setText(textField1.getText()); 问题是我有两个frames对象,每个对象都有一个textField对象,我想将一个值从jFrame1的jTextField1复制到jFrame2的jTextF

我承认这对你们中的许多人来说是一个愚蠢的问题!首先,我想说的是,就图形用户界面而言,我的java知识很低!我对文本字段有问题。我想获取一个JTextField对象的值,并在另一个JTextField对象中显示它!这是我尝试过的,但它不起作用

       textField2.setText(textField1.getText());

问题是我有两个frames对象,每个对象都有一个textField对象,我想将一个值从jFrame1的jTextField1复制到jFrame2的jTextField2

问题是正确的,您提供的信息量不是。在你告诉我们足够多的细节以便我们了解问题之前,没有办法帮助你

尽管如此,我还是觉得你的问题在于,你在程序启动时调用了这个方法,如果你更新了一个JTextField,另一个就会自动更新,但事实并非如此。当您拨打此电话时:

textField2.setText(textField1.getText());
您所做的只是将第一个字段中的字符串放入第二个字段中。在程序启动时,它可能为空,但即使它包含文本,字符串也是不可变的,并且永远不会更改,即使第一个字段的文本更改也是如此

如果希望一个字段始终与另一个字段保持相同的文本,请让它们共享相同的模型

textField2.setDocument(textField1.getDocument()); // * edited per mKorbel's rec
另一方面,如果您的目标是从一个JTextField获取文本并将其放入另一个JTextField,但只有当用户选择这样做时,才使用添加到JButton或第一个JTextField本身(插入符号在字段中时按enter键激活)的ActionListener,并在该侦听器中,放置您的代码行:

textField2.setText(textField1.getText());

这个问题是正确的,你提供的信息量是不正确的。在你告诉我们足够多的细节以便我们了解问题之前,没有办法帮助你

尽管如此,我还是觉得你的问题在于,你在程序启动时调用了这个方法,如果你更新了一个JTextField,另一个就会自动更新,但事实并非如此。当您拨打此电话时:

textField2.setText(textField1.getText());
您所做的只是将第一个字段中的字符串放入第二个字段中。在程序启动时,它可能为空,但即使它包含文本,字符串也是不可变的,并且永远不会更改,即使第一个字段的文本更改也是如此

如果希望一个字段始终与另一个字段保持相同的文本,请让它们共享相同的模型

textField2.setDocument(textField1.getDocument()); // * edited per mKorbel's rec
另一方面,如果您的目标是从一个JTextField获取文本并将其放入另一个JTextField,但只有当用户选择这样做时,才使用添加到JButton或第一个JTextField本身(插入符号在字段中时按enter键激活)的ActionListener,并在该侦听器中,放置您的代码行:

textField2.setText(textField1.getText());

它怎么不起作用?此代码段在代码中的什么位置运行?您确定在运行时textField1中有一些文本吗?它是如何不工作的?此代码段在代码中的什么位置运行?你确定在运行时textField1中有一些文本吗?@mKorbel:这就是我在未测试的情况下发布代码时发生的情况。关于你的推荐,没有“可能”的说法——谢谢!!!我们都感谢(@trashgood),顺便说一句,我今天需要这些信息,这就是快速回复的原因,@Xris:不客气。如果您想学习编写Swing,请放弃NetBeans生成的代码,转到Swing教程,然后学习手工编写代码。@mKorbel:这就是我在未测试代码的情况下发布代码时发生的情况。关于你的推荐,没有“可能”的说法——谢谢!!!我们都感谢(@trashgood),顺便说一句,我今天需要这些信息,这就是快速回复的原因,@Xris:不客气。如果您想学习编写Swing,请放弃NetBeans生成的代码,转到Swing教程,学习手工编写代码。