在Kivy中等待用户输入

2024-04-26 06:08:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个简单的蛇游戏,我想显示分数,等待点击/触摸,然后再开始新的游戏。在

我试过:

while self.paused:
    pass

并将self.paused = False放入on_touch_down()。它冻结了(这并不奇怪)。在

那么,有没有更好的方法来等待用户的输入呢?(或其他方法)


Tags: 方法用户selffalse游戏onpass分数
2条回答

我用不同的方法解决了这个问题。在

我添加了game_over变量,并在游戏结束时设置为True。我的on_touch_down()代码更改为:

if self.game_over:
    self.game_over = False
    self.game.start_new_game()
    # ...

我想我一年前也做过类似的事情。你的方法是可行的,但我认为有时你希望用户按一个特定的键。在

我的方法是使用PyUserInputPyUserInput。在

文档中的示例:

from pymouse import PyMouse
from pykeyboard import PyKeyboard

m = PyMouse()
k = PyKeyboard()

# pressing a key
k.press_key('H')

#Create an Alt+Tab combo
k.press_key(k.alt_key)
k.tap_key(k.tab_key)
k.release_key(k.alt_key)

我希望这有帮助。在

相关问题 更多 >