1. 按键按下,不弹起状态, 只进行一次判定
pgzer键按下事件处理程序只能识别按下一次键(直到释放),但如果按键保持不变,则不支持重复按键事件。
import pgzrun
counter = 1
def on_key_down(key):
global counter
if key == keys.SPACE:
print("Space key pressed...")
counter = counter + 1
def draw():
screen.clear()
screen.draw.text("Space key pressed counter: " + str(counter), (10, 10))
pgzrun.go()
如果想要,按下按键,不停的重复进行检测,需要用 on_key_down中进行一个变量控制:文章来源:https://www.toymoban.com/news/detail-516656.html
该事件仅触发一次,即按下该键时。您必须使用状态变量space_pressed
,它在按下键时声明(在on_key_down()
中),在释放键时重置(在on_key_up()
中)。根据变量space_pressed
的状态,递增update()
中的计数器:文章来源地址https://www.toymoban.com/news/detail-516656.html
import pgzrun
counter = 1
space_pressed = False
def on_key_down(key):
global space_pressed
if key == keys.SPACE:
print("Space key pressed...")
space_pressed = True
def on_key_up(key):
global space_pressed
if key == keys.SPACE:
print("Space key released...")
space_pressed = False
def update():
global counter
if space_pressed:
counter = counter + 1
def draw():
screen.clear()
screen.draw.text("Space key pressed counter: " + str(counter), (10, 10))
pgzrun.go()
到了这里,关于关于 pygame中,检测按键按下的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!