qq_57931996 2023-06-01 08:54 采纳率: 88.9%
浏览 26

python飞机大战键盘事件监听

python飞机大战键盘事件监听
监听不到字母键是怎么回事?其他键可以监听到代码中的例子的K_UP键可以监听到
但是字母键b监听不到

代码作用:
按下 b 键随机返回0~100炸弹数量
如图 按下k_up键改变bomb数量并输出b

img

换回 b 键

img

没有反应,这是什么原因


    def event_handler(self):
        """
        @return: 如果监听到退出事件,返回 True,否则返回 False
        """
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                return True
            elif event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
                return True
            elif event.type == pygame.KEYDOWN and event.key == pygame.K_SPACE:
                if self.is_game_over:  # 游戏已经结束
                    self.reset_game()  # 游戏已经开始
                else:
                    self.is_pause = not self.is_pause  # 切换暂停状态
            # 判断是否正在游戏
            if not self.is_game_over and not self.is_pause:
                # 监听玩家按下”b”键,引爆1颗炸弹
                if event.type == pygame.KEYDOWN and event.key == pygame.K_UP:
                    # TODO 测试炸弹数量变化(# TODO···表示待完成项目提醒)
                    self.hud_panel.show_bomb(random.randint(0,100))
                    print("b")
        return False
  • 写回答

2条回答 默认 最新

  • 阳光宅男xxb 2023-06-01 09:29
    关注

    可能与其他工具或软件的按键有冲突,更换一个其他的按键试试

    评论

报告相同问题?

问题事件

  • 创建了问题 6月1日