我現在有幾個函數在draw方法中被按鍵激活。基本上,有一個複雜的正方形網格,並且每個正方形的顏色都是基於用戶按下的鍵('a'使其變爲紅色,'b'使其變成綠色等等),用分配給每個正方形的方法填充。在處理中重置KeyPressed()
但是,每次按下第一個按鍵時,都會根據該按鍵填充所有的方塊(例如,如果用戶按下的第一個按鍵爲'a',則所有方塊都將是紅色而不是隻是第一個)。我怎樣才能使第一個按鍵適用於第一個方法,第二個按鍵適用於第二個方法,依此類推,即使它在循環draw()方法中。下面是低於過於簡化的版本:
void draw(){
BoxOne();
BoxTwo();
}
void boxOne(){
if(keyPressed){
if(key == 'a'){
fill(red);
}
if(key == 'b'){
fill(green);
}
rect(10, 10, 10, 10);
}
}
void boxTwo(){
if(keyPressed){
if(key == 'a'){
fill(red);
}
if(key == 'b'){
fill(green);
}
rect(20, 20, 10, 10);
}
}
我想,反正是有「重置」的keyPressed選項,以便它需要在另一個關鍵的下一次?