2015-02-10 70 views
0

我正在使用Processing來創建一些東西,基本上我的keyDown()不起作用。它應該在任何按鍵被按下時觸發,但函數沒有被調用。下面的代碼:keyDown()不工作處理

int playerno=0; //determines player 
 
boolean ready=true; 
 
void setup() { 
 
    size(700, 700); 
 
    background(#FFFFFF); 
 
    fill(#000000); 
 
    textSize(50); 
 
    text("Press Any Key To Start", 350, 350); 
 
} 
 

 
void keyPressed() { 
 
    if (ready) { 
 
    fill(#FFFFFF); 
 
    rect(350, 350, 200, 100); 
 
    fill(#000000); 
 
    textSize(50); 
 
    text("Game Ready", 350, 350); 
 
    boolean ready=false; 
 
    } 
 
}

回答

0

這將不會在未draw功能工作。你也在keypressed()裏面聲明新的局部變量ready這是個錯誤的錯誤。嘗試將您的繪圖代碼從「keyDown()」移動到「繪圖」中,如下所示:

void draw() { 
    if (ready == false) { 
    background(#FFFFFF);  //This is needed for redrawing whole scene 
    fill(#FFFFFF); 
    rect(350, 350, 200, 100); 
    fill(#000000); 
    textSize(50); 
    text("Game Ready", 350, 350); 
    } 
} 

void keyPressed() { 
    if (ready) { 
    ready=false; 
    } 
}