【发布时间】:2011-07-25 12:52:17
【问题描述】:
在单击名为 button1 的 Button 后,我试图使输入 nameField 出现在名为 label1 的 Label 中。
现在它说:'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);
}
});
}
}
【问题讨论】:
-
您刚刚检索了 nameField 文本字段的初始文本,并且您的 txt 变量不会自动更新,因为该变量与文本字段的 text 属性之间没有绑定,这就是您需要的原因正如答案所指出的那样,在 actionPerformed 方法中更新 txt 变量。如果您(稍后)对能够将元素绑定在一起(更强大的方法)感兴趣,那么请知道有一些库可以做到这一点,例如:java.net/projects/beansbinding
-
非常感谢您的回答!我很感激并好好看看它
-
如何获取 JButton 的名称以便在 IF 语句中检查它???
标签: java swing jbutton jlabel settext