智慧兽 2021-01-18 00:51 采纳率: 0%
浏览 128

PYGAME的问题,如何设置矩形然后让其自动移动

import pygame


class moving():
    def __init__(self):
        pygame.init()
        self.screen = pygame.display.set_mode((500, 300))
        self.bg_color = self.screen.fill((65, 222, 65))
        self.font = pygame.font.Font(None, 36)
        self.text = self.font.render('Hello There', 1, (10, 10, 10))
        self.rect_width = 50
        self.rect_height = 50
        self.rect_moving = 10
        self.rect1 = pygame.Surface((60, 60), pygame.SRCALPHA)

    def text1(self, screen, text):
        textpos = text.get_rect()
        textpos.centerx = screen.get_rect().centerx
        textpos.bottom = screen.get_rect().bottom / 2
        screen.blit(text, textpos)

    def moving_rect(self,ai_setting):
        pygame.draw.rect(self.rect1, (255, 255, 255), [0, 0, self.rect_width, self.rect_height])
        x = 0
        for i in range(20):
            x += self.rect_moving
            self.screen.blit(self.rect1, [x, 0])


def run():
    pygame.init()
    ai_setting = moving()
    ai_setting.text1(ai_setting.screen, ai_setting.text)
    ai_setting.moving_rect(ai_setting)

    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                return

        pygame.display.update()
        pygame.display.flip()


run()

代码如上,我想要让其矩形进行移动,但是移动却出现问题。。是建立了多个矩形然后X轴进行变化。。如何建立单个矩形进行移动

  • 写回答

1条回答 默认 最新

  • qq_36286597 2022-05-03 00:59
    关注

    移动一次更新一次背景就行了,你这里只是更新了新的矩形,并没有刷新背景导致之前做出来的矩形没有被覆盖

    评论

报告相同问题?

悬赏问题

  • ¥50 comsol稳态求解器 找不到解,奇异矩阵有1个空方程返回的解不收敛。没有返回所有参数步长;pid控制
  • ¥15 怎么让wx群机器人发送音乐
  • ¥15 fesafe材料库问题
  • ¥35 beats蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功