Ale*_*gak 2 java swing keylistener
我正在编写小型图形编辑器,我想在按 Ctrl+A 时捕获事件
我使用这样的代码(这是测试版):
@Override
public void keyPressed(KeyEvent e) {
System.out.println("Press");
switch (e.getKeyCode()){
case KeyEvent.VK_A :
System.out.println("A");
break;
}
}
Run Code Online (Sandbox Code Playgroud)
但我不知道如何捕捉 Ctrl+a
我试过这样的事情
case KeyEvent.VK_CONTROL+KeyEvent.VK_A :
System.out.println("A+CTRL");
break;
Run Code Online (Sandbox Code Playgroud)
但此代码KeyEvent.VK_CONTROL+KeyEvent.VK_A返回 int 并且可能另一个组合键返回相同的数字
所以有人可以帮助我吗
您可以使用isControlDown()方法:
switch (e.getKeyCode())
{
case KeyEvent.VK_A :
if(e.isControlDown())
System.out.println("A and Ctrl are pressed.");
else
System.out.println("Only A is pressed");
break;
...
}
Run Code Online (Sandbox Code Playgroud)