我正在使用NyARToolkit在Processing上构建一个应用程序,但我的问题不是直接关于NyArToolkit,而是关于一个关键的release()方法。
问题是,我出示了一张卡,然后如果我按不同的键,我可以做一些事情。我按“X”,它显示一件事,我按“Y”,它显示另一件事。问题是,它显示了始终按下的最后一个键的信息。
如果我更换了我的AR卡,它会立即显示最后一个按键的信息。我想做一些事情来释放钥匙,例如:在我按下钥匙时显示,或者让“ESC”停止显示所有内容。
我一直在阅读关于keyreleased()方法的内容,但我还没想到要把它用于工作。
顺便说一下,我的方法是这样的:
if(key ==“c”)then
否则if(key ==“d”)然后......
答案 0 :(得分:0)
如果有一个布尔保持跟踪,你推动了什么
private boolean buttonIsPressed = false;
并在你的keyPressed里面
buttonIsPressed = true;
并在你的keyReleased
中buttonIsPressed = false;
通过这种方式,你可以跟踪它是否被按下,使用一个字符串,你也可以通过在keyPressed中初始化它并在你的keyReleased中使它为null来跟踪正在保持的按钮。
如果我误解了你的问题,请告诉我。
编辑:
阅读你的编辑,你在那里犯了很大的错误,确保使用.equals比较字符串,如果(key.equals(“c”)) 再一次,你的问题对我来说不是很清楚,所以如果我错了,请原谅。