[英]How do I add a keystroke inside of keyPressed(KeyEvent e) method to change color of ball? simple KeyListener demo
[英]How do I update the current keyPressed in a KeyEvent for java?
如果有人可以幫助我編寫代碼,我將非常感激,我在開發游戲時正在學習代碼。
這是代碼的片段... ps我是堆棧溢出的新手,而不是我仍在學習的熟練的Java程序員。 很抱歉,如果我的問題很模糊或不確定,... move(1)使球拍的坐標移動x + = 1和move(-1)x- = 1 * /
修復嘗試#1:
進行更改后,我嘗試使用return語句,希望它能奏效,但是沒有結果...
public void keyPressed(KeyEvent e) {
//MOVE LEFT
if (e.getKeyCode() == KeyEvent.VK_A){
if(e.getKeyCode() == KeyEvent.VK_D){
move(1);
//maybe update?
return;
}
else
move(-1);
}
//MOVE RIGHT
if (e.getKeyCode() == KeyEvent.VK_D){
if(e.getKeyCode() == KeyEvent.VK_A) {
move(-1);
//maybe update?
return;
}
else
move(1);
}
}
處理這種情況的最佳方法是創建一個布爾數組並將所有值存儲在其中,然后在以后使用。 這樣可以使更新的處理更加順暢,並讓您有更多的組織空間。 在頂部類型創建數組
public static boolean[] keys = new boolean[999];
然后在新聞方法中
public void keyPressed(KeyEvent e) {
keys[e.getKeyCode()] = true;
}
最后是釋放方法
public void keyReleased(KeyEvent e) {
keys[e.getKeyCode()] = false;
}
然后稍后引用即可使用
[class].keys[KeyEvent.[key]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.