java一个按钮重复调用,按一次执行代码一次,按第二次,它执行两次,按第三次,执行了三次。。。

bn5.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEv... bn5.addActionListener(
new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e3)
{
String str1 = tf4.getText();
String str2 = tf5.getText();
if(0!=str1.length() && 0!=str2.length())
{
try
{
br3 = new BufferedWriter(new FileWriter("C:\\Documents and Settings\\Administrator\\桌面\\new folder\\帐户存储\\zh.txt"));
br4 = new BufferedWriter(new FileWriter("C:\\Documents and Settings\\Administrator\\桌面\\new folder\\帐户存储\\mm.txt"));
br3.write(tf4.getText(), 0, tf4.getText().length());
br4.write(tf5.getText(), 0, tf5.getText().length());
br3.flush();
br4.flush();
br3.close();
br4.close();
}
catch(Exception e4)
{
}
finally
{
tf4.setText("");
tf5.setText("");
f2.setVisible(false);
JOptionPane.showMessageDialog(f2, "修改成功!");
}
}
else
{
JOptionPane.showMessageDialog(f2, "用户名密码不能为空!");
}
}
}
);
展开
 我来答
鲁班七号2333
2020-02-15
知道答主
回答量:3
采纳率:0%
帮助的人:2155
展开全部
这个问题是因为你的按钮JButton对象是静态的导致。我也遇到过,把新建按钮对象语句前面的static修饰去掉即可。
因为static对象在内存里面只有它唯一一个,所以每次运行,相当于给同一个按钮多加一个actionListener。
hibkbkbh
2015-12-27
知道答主
回答量:1
采纳率:0%
帮助的人:2万
展开全部
你的问题解决了吗?求赐教
追问
最近在别的类似程序中得到了答案!是程序的某段异常没有处理导致的-_-||自学不容易啊。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帽子狗
2015-08-22 · TA获得超过942个赞
知道小有建树答主
回答量:611
采纳率:50%
帮助的人:549万
展开全部
什么叫执行3次?
点一次就触发一次. 监听触发这块肯定不会出问题.
追问
就是我点一次按钮,事件就执行一次代码,当我点了第二次按钮时,事件执行了两次代码。。。
追答
... 好吧  不是执行三次是什么意思.. 是执行3次出来什么效果..
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式