Swing / Java:如何正确使用getText和setText字符串

在点击一个名为button1Button后,我正在尝试使输入nameField出现在名为label1Label 。 现在它说:’txt’,我理解为什么。 但我不知道我怎么能用这个字符串! 谁能解释一下我做错了什么以及如何正确使用这个字符串?

 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; public class thisismytest2 { public static void main(String[] args) { final JFrame frame = new JFrame(); JPanel panel = new JPanel(); JTextField nameField = new JTextField("...", 2); JButton button1 = new JButton(); final JLabel label1 = new JLabel(); label1.setText("txt"); label1.setVisible(false); String txt = nameField.getText(); frame.add(panel); panel.add(button1); panel.add(label1); frame.setSize(200,200); frame.setVisible(true); panel.add(nameField); frame.setSize(600,400); nameField.setBounds(400, 40, 400, 30); button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { label1.setVisible(true); } }); } } 

您在按钮被单击“txt”之前设置标签文本。 而是在单击按钮时,调用标签上的setText()并将文本字段中的文本传递给它。

例:

 label1.setText(nameField.getText()); 

在你的动作执行方法中,调用:

 label1.setText(nameField.getText()); 

这样,单击按钮时,label将更新为nameField文本。

getText方法返回一个String,而setText接收一个String,所以你可以像label1.setText(nameField.getText()); 在你的听众中

在nameField上设置DocumentListener。 更新nameField时,请更新标签。

http://download.oracle.com/javase/1.5.0/docs/api/javax/swing/JTextField.html