【发布时间】:2020-09-10 08:05:26
【问题描述】:
我有一个jTextField 并为其添加了一个关键监听器。所以,如果我输入一些内容并按下 Enter 键,keypressed 事件将被调用,然后我将保存输入的内容。
但是,如果我按下 Enter 键,它会被调用 3 次。
tPatientName.addKeyListener(new java.awt.event.KeyAdapter() {
@Override
public void keyPressed(java.awt.event.KeyEvent e) {
if(e.getKeyCode() == KeyEvent.VK_ENTER) {
System.out.println("Saved Successfully");
}
}
});
控制台输出:
Saved Successfully
Saved Successfully
Saved Successfully
我不知道我的代码有什么问题。 提前致谢。
【问题讨论】:
-
它对我来说很好用。发布minimal reproducible example,以便我们验证还有什么问题。
-
这是完整的可复现的例子,这是我所有的代码。
-
什么是 tPatientName?它在哪里显示,你的主要方法是什么。只需创建一个带有 JFrame、JTextField 的 .java 文件,然后添加它们 keyListener。
-
tPatientName 是
jTextField。我把它放在JTable中作为一列 -
嗯,您在
JTable中拥有的信息实际上很重要,因为这可能是该行为的来源......
标签: java swing keylistener