Java-添加回车按钮
我想在按下Enter按钮时合并两个字符串 此外,当我从文本字段到按钮单击Tab键时,当我按空格键但不按Enter键时,它也会工作。这对Java正常吗 我的代码如下所示: (评论是德语的,如果你不懂德语,你可以忽略它们) 如果要添加“输入事件”,则必须在Java-添加回车按钮,java,swing,button,enter,Java,Swing,Button,Enter,我想在按下Enter按钮时合并两个字符串 此外,当我从文本字段到按钮单击Tab键时,当我按空格键但不按Enter键时,它也会工作。这对Java正常吗 我的代码如下所示: (评论是德语的,如果你不懂德语,你可以忽略它们) 如果要添加“输入事件”,则必须在文本字段中添加键侦听器,侦听输入-键并执行与按下按钮时相同的代码 注意:如果要从文本字段按Enter键,则需要执行此操作。因此,您不需要使用Tab切换到按钮将keyListener添加到您的按钮但是1如下所示: // declare the lis
文本字段中添加键侦听器
,侦听输入
-键并执行与按下按钮时相同的代码
注意:如果要从文本字段按Enter键,则需要执行此操作。因此,您不需要使用Tab切换到按钮将keyListener添加到您的按钮但是1
如下所示:
// declare the listener
but1.addKeyListener(new KeyListener() {
// listen to keys
public void keyPressed(KeyEvent e){
// find ENTER key press
if(e.getKeyCode() == KeyEvent.VK_ENTER){
// do your stuff here!!! :)
}
}
}
注意:如果希望在各种元素(如JTextField
中执行此操作,请不要动态声明侦听器:
如下所示声明KeyListener
:
KeyListener listener = new KeyListener() {
// listen to keys
public void keyPressed(KeyEvent e){
// find ENTER key press
if(e.getKeyCode() == KeyEvent.VK_ENTER){
// do your stuff here!!! :)
}
}
并将其添加到所需的元素中:
but1.addKeyListener(listener);
tfstring.addKeyListener(listener);
这是因为“专注”。您需要为文本字段添加KeyListener
@Override
public void keyTyped(KeyEvent e) {
recognizeKey(e);
}
@Override
public void keyPressed(KeyEvent e) {
recognizeKey(e);
}
@Override
public void keyReleased(KeyEvent e) {
recognizeKey(e);
}
public void recognizeKey(KeyEvent e){
int keyCode = e.getKeyCode();
switch(keyCode) {
case KeyEvent.VK_ENTER:
//TODO: do something
break;
default:
//TODO: do something
break;
}
}
@Override
public void keyTyped(KeyEvent e) {
recognizeKey(e);
}
@Override
public void keyPressed(KeyEvent e) {
recognizeKey(e);
}
@Override
public void keyReleased(KeyEvent e) {
recognizeKey(e);
}
public void recognizeKey(KeyEvent e){
int keyCode = e.getKeyCode();
switch(keyCode) {
case KeyEvent.VK_ENTER:
//TODO: do something
break;
default:
//TODO: do something
break;
}
}