我怎样才能基本上与关键事件相反?
IE一个简单的程序将打印出“Whatever”,直到按下任何键,然后停止。
发布密钥后,它会再次开始打印出来吗?
public class Printer
{
public static void main(String[] args)
{
"WHILE ANY KEYBOARD KEY NOT PRESSED" PRINT SOMETHING
"WHEN PRESSED" STOP PRINTING SOMETHING
" WHEN RELEASED" START PRINTING AGAIN
}
}
答案 0 :(得分:2)
我认为你可以在主线程中打印同时检查一个布尔值(让我们说" isKeyPressed"这将是最初的假)在while循环中每当按键监听器中按下一个键你将设置布尔值标志为true将阻止主线程打印,并且当释放键时,您将再次将布尔标志设置为false以恢复打印
主要方法中的
while(!isKeyPressed){
your logic / printing
}
在你的按键监听器中
public void keyPressed(KeyEvent e) {
isKeyPressed = true;
}
你的keyReleased监听器中的
public void keyReleased(KeyEvent e) {
isKeyPressed = false;
}
希望能帮助你。