51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4268|回复: 2
打印 上一主题 下一主题

[求助] 请问Pygame如何让event触发出的screen.blit的图片一直存在?

[复制链接]
  • TA的每日心情
    擦汗
    昨天 09:09
  • 签到天数: 526 天

    连续签到: 3 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2019-2-19 09:36:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    1测试积点
    本帖最后由 测试积点老人 于 2019-2-19 09:38 编辑

    请问各位坛友和大神,我在试着做飞机大战的时候,按教学地用event触发子弹的射击。但是,在event结束后,子弹就消失了。怎样才可以在event结束后让子弹一直滑行呢?
    相关代码具体如下:
    1. class = bullet(object):
    2. def __inti__(self):
    3.     self.image = image
    4.     self.x = x
    5.     self.y = y

    6. def display(self):
    7.     screen.blit(self.image, (self.x, self.y))

    8. def move(self):
    9.     self.x += 10

    10. Bullet = bullet(bullet_image, bullet_x, bullet_y)

    11. while True
    12.     if event.type == KEYDOWN:
    13.         if event.key == K_a:       # 用A触发Bullet的展示和移动
    14.             bullet.display(Bullet)
    15.             bullet.move(Bullet)
    复制代码
    运行这段代码,结果是这颗子弹的坐标的确会变,但是要按一次“A”键子弹才会变一次,而且子弹也是那时候才出现。
    应该要怎么样使得我按了这个“A”键后,子弹会自己一直沿一条轨迹走呢?
    还请各位坛友和大神不吝赐教。谢谢~

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 09:56
  • 签到天数: 1515 天

    连续签到: 4 天

    [LV.Master]测试大本营

    2#
    发表于 2019-2-20 10:28:11 | 只看该作者
    用循环来移动
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 07:24
  • 签到天数: 2811 天

    连续签到: 4 天

    [LV.Master]测试大本营

    3#
    发表于 2019-2-20 13:18:42 | 只看该作者
    做区域的移动进行
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-15 06:04 , Processed in 0.062187 second(s), 21 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表