要想实现键盘控制作用,就需要给游戏键盘监听事件
利用pygame模块的key.get_pressed()方法,来检测按键是否按下

key_press =pygame.key.get_pressed()
if not key_press[K_UP] and ball.rect.bottom < height:
ball.movedown()
elif key_press[K_UP] and ball.rect.top>0:
ball.moveup()
1
2
3
4
5
实现效果
游戏中,当按下上键时游戏对象就往上移动,一松开按键,游戏对象就往下降

完整代码
import pygame
from pygame.locals import *
from sys import exit

pygame.init() #进行初始化
bgsize = width,height = 1000,600
pygame.display.set_mode(bgsize)
pygame.display.set_caption('进击的蜘蛛')
bg=(0,0,0) #设置背景颜色
turtl = pygame.image.load('D:\QQ\MobileFile/spride.png')
ball_image = pygame.transform.scale(turtl,(width//10,height//10)) #对图片进行缩放
screen = pygame.display.get_surface()
class Ball(pygame.sprite.Sprite):
def __init__(self,up_speed,down_speed):
pygame.sprite.Sprite.__init__(self)
self.up_speed = up_speed
self.down_speed = down_speed
self.image = ball_image
self.rect = self.image.get_rect()
self.rect.top = 0
self.rect.left =(width-self.image.get_width())//2
def moveup(self):
self.rect.top -=self.up_speed

def movedown(self):
self.rect.top +=self.down_speed

ball = Ball(6,4)
clock = pygame.time.Clock()
while 1:
for event in pygame.event.get():
if event.type == QUIT:
exit()

key_press =pygame.key.get_pressed()
if not key_press[K_UP] and ball.rect.bottom < height:
ball.movedown()
elif key_press[K_UP] and ball.rect.top>0:
ball.moveup()
screen.fill(bg)
screen.blit(ball_image,ball.rect)
clock.tick(25)
pygame.display.flip() #将更新显示到屏幕上

---------------------

最新文章

  1. Hadoop入门学习笔记---part3
  2. iOS tableView 滚动后回到顶部
  3. Linux常用调优配置
  4. shell sort
  5. JSON 遍历转为Model Bean
  6. hdu1064Financial Management
  7. 详解常用的gulp命令
  8. 07-从零玩转JavaWeb-对象内存分析
  9. Python做的第一个小项目-模拟登陆
  10. PHP分页初探 一个最简单的PHP分页代码的简单实现
  11. 服务器&amp;阵列卡LSI SAS223&amp;组raid 10
  12. docker环境下elasticsearch安装ik和拼音分词
  13. CentOS7.5 GlusterFS 分布式文件系统集群环境搭建
  14. EL 快速开始
  15. CC4 表达方式----输赢
  16. Children&#39;s Game UVA - 10905
  17. ref与out
  18. centos6.5安装mysql
  19. 二维码扫描开源库ZXing定制化【转】
  20. [svc][dhcp]关于无线ap自动发现选项dhcp option43配置

热门文章

  1. IQueryable不能使用异步方法的解决方案
  2. Python3-问题整理
  3. vuex基本使用
  4. Show Me the Code
  5. ssh公私钥免密登陆
  6. 什么是HTTP协议?常用的状态码有哪些?
  7. secureCRT安装,破解,连接linux机器(含安装包)
  8. 爬虫之Js混淆&amp;加密案例
  9. 【接口工具】接口抓包工具之Fiddler
  10. 关于GeneXus中的ForeachCommand命令