移动的小球

#移动小球
import sys    # 导入sys模块
import pygame    # 导入pygame模块

pygame.init()     # 初始化pygame
size = width, height = 640, 480    # 设置窗口
screen = pygame.display.set_mode(size)    # 显示窗口
color = (0, 0, 0)    # 设置颜色

ball = pygame.image.load("ball.png")    # 加载图片
ballrect = ball.get_rect()   # 获取矩形区域

speed = [5, 5]     # 设置移动的X轴、Y轴距离
clock = pygame.time.Clock()     # 设置时钟
# 执行死循环,确保窗口一直显示
while True:
    clock.tick(60)    # 每秒执行60次
    # 检查事件
    for event in pygame.event.get():
        if event.type == pygame.QUIT:     # 如果单击关闭窗口,则退出
            sys.exit()
    ballrect = ballrect.move(speed)    # 移动小球
    # 碰到左右边缘
    if ballrect.left < 0 or ballrect.right > width:
        speed[0] = -speed[0]
    # 碰到上下边缘
    if ballrect.top < 0 or ballrect.bottom > height:
        speed[1] = -speed[1]
    screen.fill(color)     # 填充颜色
    screen.blit(ball, ballrect)     # 将图片画到窗口上
    screen.blit(ball, ballrect)     # 将图片画到窗口上
    pygame.display.flip()    # 更新全部显示
pygame.quit()      # 退出pygame

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用Python的pygame库来实现利用方向键控制移动的效果。下面是一个简单的示例代码: ```python import pygame pygame.init() # 设置窗口大小和标题 screen = pygame.display.set_mode((400, 400)) pygame.display.set_caption("Move Ball") # 定义小的初始位置和速度 ball_pos = [200, 200] ball_speed = [0, 0] # 循环监听事件 while True: for event in pygame.event.get(): # 监听关闭窗口事件 if event.type == pygame.QUIT: pygame.quit() exit() # 监听按键事件 elif event.type == pygame.KEYDOWN: if event.key == pygame.K_UP: ball_speed[1] = -5 elif event.key == pygame.K_DOWN: ball_speed[1] = 5 elif event.key == pygame.K_LEFT: ball_speed[0] = -5 elif event.key == pygame.K_RIGHT: ball_speed[0] = 5 elif event.type == pygame.KEYUP: if event.key == pygame.K_UP or event.key == pygame.K_DOWN: ball_speed[1] = 0 elif event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT: ball_speed[0] = 0 # 更新小位置 ball_pos[0] += ball_speed[0] ball_pos[1] += ball_speed[1] # 绘制小和背景 screen.fill((255, 255, 255)) pygame.draw.circle(screen, (255, 0, 0), ball_pos, 20) pygame.display.flip() ``` 在这个示例中,我们首先初始化pygame库,并设置了窗口的大小和标题。然后定义了小的初始位置和速度。 在主循环中,我们循环监听事件,如果是关闭窗口事件,就退出程序;如果是按键事件,就根据按下的方向键来修改小的速度;如果是松开方向键事件,就将相应方向的速度设为0。最后,我们根据小的速度更新小的位置,并在屏幕上绘制出小和背景。使用`pygame.display.flip()`函数来更新屏幕上的显示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值