一、鍵盤交互相關關鍵詞與函數
keyIsPressed: 關鍵詞,按下按鍵時為true,反之為false
keyCode: 關鍵詞,用于判斷按下哪個按鍵
keyPressed():函數,按鍵按下時觸發一次
keyReleased():函數,按鍵松開時觸發一次
keyIsDown():函數,按下指定按鍵時返回true,反之為false
以下是一個較綜合的案例,用wsad與zxcv控制小球移動:
var x=200; var y=200; var speed=2; function setup() { createCanvas(400, 400); } function draw() { background(220); ellipse(x,y,20,20); if(keyIsPressed){ //持續觸發 //字母用小寫 if(key=='a'){ x-=speed; } if(key=='d'){ x+=speed; } } if(keyIsDown(87)){ //持續觸發 //使用keyCode //87即w y-=speed; } if(keyIsDown(83)){ //持續觸發 //使用keyCode //83即s y+=speed; } } function keyPressed(){ //按鍵按下時觸發一次 //字母用大寫 if(key=='Z'){ x-=20; } if(key=='X'){ x+=20; } } function keyReleased(){ //按鍵松開時觸發一次 //字母用大寫 if(key=='C'){ y-=20; } if(key=='V'){ y+=20; } }
查看效果:http://alpha.editor.p5js.org/full/S1YQvEFIZ
二、key與keyCode
下面這個案例將在畫面上輸出你按下的按鍵的key與keyCode,在寫程序時可以用這個辦法快速查找keyCode:
function setup() { createCanvas(400, 400); } function draw() { background(220); textAlign(CENTER); textSize(30); if(keyIsPressed){ text(key,200,180); text(keyCode,200,220); } }
相信看了本文案例你已經掌握了方法,更多精彩請關注Gxl網其它相關文章!
推薦閱讀:
jquery+fullpage添加界面內的頭部與版權
preload()函數與圖片上傳使用
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com