如何使用键移动对象
How to move an object with keys
我不明白为什么这行不通,任何人都可以帮助我,我正在使用 p5.js 但它行不通:
let x = 50, y = 50;
function setup() {
createCanvas(200, 200);
}
function draw() {
rect(x, y, 50, 50);
if (this.keyPressed(87)) {
y -= 5;
} else if (keyIsDown(83)) {
y += 5;
} else if (keyIsDown(65)) {
x -= 5;
} else if (keyIsDown(68)) {
x += 5;
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.3.1/p5.min.js"></script>
</head>
<body>
</body>
</html>
您应该在第一个 if 语句中调用 keyIsDown(87)
而不是 this.keyPressed(87)
。通过此更改,A-W-S-D 键可用于移动矩形(请注意,在使用键盘之前单击草图以确保它具有焦点)。
let x = 50, y = 50;
function setup() {
createCanvas(200, 200);
}
function draw() {
rect(x, y, 50, 50);
// This used to be this.keyPressed(87) which caused an error
if (keyIsDown(87)) {
y -= 5;
} else if (keyIsDown(83)) {
y += 5;
} else if (keyIsDown(65)) {
x -= 5;
} else if (keyIsDown(68)) {
x += 5;
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.3.1/p5.min.js"></script>
</head>
<body>
</body>
</html>
我不明白为什么这行不通,任何人都可以帮助我,我正在使用 p5.js 但它行不通:
let x = 50, y = 50;
function setup() {
createCanvas(200, 200);
}
function draw() {
rect(x, y, 50, 50);
if (this.keyPressed(87)) {
y -= 5;
} else if (keyIsDown(83)) {
y += 5;
} else if (keyIsDown(65)) {
x -= 5;
} else if (keyIsDown(68)) {
x += 5;
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.3.1/p5.min.js"></script>
</head>
<body>
</body>
</html>
您应该在第一个 if 语句中调用 keyIsDown(87)
而不是 this.keyPressed(87)
。通过此更改,A-W-S-D 键可用于移动矩形(请注意,在使用键盘之前单击草图以确保它具有焦点)。
let x = 50, y = 50;
function setup() {
createCanvas(200, 200);
}
function draw() {
rect(x, y, 50, 50);
// This used to be this.keyPressed(87) which caused an error
if (keyIsDown(87)) {
y -= 5;
} else if (keyIsDown(83)) {
y += 5;
} else if (keyIsDown(65)) {
x -= 5;
} else if (keyIsDown(68)) {
x += 5;
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.3.1/p5.min.js"></script>
</head>
<body>
</body>
</html>