以下代碼無效。我正在嘗試使用按鍵方法向左,向右,向上和向下移動播放器,但是當我按下按鍵時,它不響應。我沒有粘貼整個代碼,只是移動框的部分還有其他if語句來實現其他內容的移動。KeyListener不工作
public class innerClassKeyPressed {
void keyPressed(KeyEvent e)
{
int key= e.getKeyCode();
if(key==KeyEvent.VK_LEFT){
dx=-1;
}
if(key==KeyEvent.VK_RIGHT){
dx=1;
}
if (key==KeyEvent.VK_UP){
dy=-1;
}
if (key==KeyEvent.VK_DOWN){
dy=1;
}
if (key == 82)
{
initLevel(currlevel);
} //R
if (key == 78)
{
currlevel++;
initLevel(currlevel);
}
if ((key == KeyEvent.VK_LEFT) && (key == KeyEvent.VK_RIGHT) &&
(key == KeyEvent.VK_UP) && (key == KeyEvent.VK_DOWN)) {
return;
}
for (int row=0; row < myArray.length; row++)
{
for (int column=0; column < myArray[row].length; column++)
{
if(myArray[row][column]== Contents.PLAYER) {
if (myArray[row+dy][column+dx] == Contents.BOX)
{
if (myArray[row+dy*2][column+dx*2] == Contents.EMPTY)
{
myArray[row+dy][column+dx]= Contents.PLAYER;
myArray[row][column]= Contents.EMPTY;
myArray[row+dy*2][column+dx*2]= Contents.BOX;
*「我沒有粘貼整個代碼」*這可能是問題在於代碼未顯示。爲了更快地獲得更好的幫助,請發佈[SSCCE](http://sscce.org/)。 –
好的,我會發布整個關鍵監聽器。謝謝 –
*「整個關鍵聽衆」。*沒有人要求「整個關鍵聽衆」。在對「SSCCE」的含義進行隨機猜測之前,請先閱讀***鏈接的文章。 –