gpt4 book ai didi

java - JButton 的操作监听器不起作用

转载 作者:行者123 更新时间:2023-12-01 08:10:37 24 4
gpt4 key购买 nike

我正在尝试自己学习java,并且希望制作一个安全的文本编辑器,您必须登录才能访问文本。但是, Action 监听器不适用于任何按钮,我不知道出了什么问题。

请注意,我制作了两个按钮只是因为第一个按钮不起作用。

我的代码如下:

public class storage extends JFrame{
private JTextField text1;
public JTextArea storearea;
public JButton newsave;
public JButton save;

public storage(UserProfile person) { //constructor with name passed in
super("Safe Storage");
setLayout(new FlowLayout());

JTextField text1 = new JTextField("Using program as: " + (person.getName()) );
text1.setEditable(false);
add(text1);

JTextArea storearea = new JTextArea(person.getText());
add(storearea);

JButton newsave = new JButton("Save");
add(newsave);

JButton save = new JButton("Save Changes");
add(save);

thehandler handler = new thehandler();
save.addActionListener(handler);
newsave.addActionListener(handler);
} //end constructor


public class thehandler implements ActionListener { //Handler
public void actionPerformed(ActionEvent event){
if(event.getSource() == save) {
System.out.println("Overwriting text");
}
else if(event.getSource() == newsave) {
System.out.println("Overwriting text new");
}
}
} //end thehandler
} //end class

最佳答案

您已声明一个实例变量(为 null);

public JButton newsave;

和一个局部变量:

JButton newsave = new JButton("Save");

您不需要局部变量(仅需要实例变量),因此代码应该是:

newsave = new JButton("Save");

关于java - JButton 的操作监听器不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17757537/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com