展开全部
event英文翻译是5261事件 get 获取 type是样式,类型的4102意思,所以他这个都是有规律的,但是有顺序事件在前1653,后面跟属性
同时也有父子(层级)关系
event.get() 获取到的事件
event.type() 事件类型
event.key() 按键事件
一般都是写在while里面,因为这是个不断循环的过程,不然,只执行一便达不到实际要求,这是Pygame里面设定好的
这是贪吃蛇游戏的一段代码(一部分):txt = font.render('GAME OVER', True, (255, 0, 0))
screen.blit(txt, (size[0]/6, size[1]*2/5-20)) # (0, 0) (size[0]/6, size[1]*2/5)100号字中心位置
direction = 'right' # 初始方向,向右
changeDirection = direction # 定义一个改变方向的变量,按键
running = True
while Trunning:
for event in pygame.event.get(): # 从队列中获取事件
if event.type == QUIT: # 判断事件类型是否为退出事件
# pygame.quit()
sys.exit()
elif event.type == KEYDOWN: # 如果按键被按下(事件)
if event.key == K_RIGHT or event.key == K_d: # 如果是右键头或者是d,蛇向右移动
changeDirection = 'right'
if event.key == K_LEFT or event.key == K_a: # 如果是左键头或者是a,蛇向左移动
changeDirection = 'left'
if event.key == K_UP or event.key == K_w:
changeDirection = 'up'
if event.key == K_DOWN or event.key == K_s:
changeDirection = 'down'
#这下面一行可以忽略,
if event.key == K_ESCAPE: # 对应键盘上的Esc键,表示退出
pygame.event.post(pygame.event.Event(QUIT))
# 绘制文本,刷新显示
screen.blit(txt, (20, 10))
screen.fill(blackColor) #放在for语句一列,属于while的(子)层级,循环不断的刷新