使用pygame_textinput模块获取用户输入值?

时间:2018-03-13 00:58:09

标签: python pygame textinput

我一直在闲暇时间使用pygame进行简单的游戏,让我熟悉它的代码。我正在制作的游戏是一个四连胜游戏的抽象,它实现了数学问题。为了得到用户的答案,我使用了一个名为pygame_textinput的模块。但是,我正在努力提取用户的答案,我希望能够将答案与正确的答案进行比较,这样才能让用户将他们的磁盘放在网格中。

我的代码是:

mathsanswer = pygame_textinput.TextInput()

这是在主循环之外,然后我在下面的代码中调用它。

mathsanswer.update(events) #Check if user has inputted text
display.blit(mathsanswer.get_surface(), (600,725))

这部分代码完全适用于用户输入的文本在屏幕上显示。

然而,当我尝试提取用户键入的内容时,我得到了:

<pygame_textinput.TextInput object at 0x00000219C1F101D0>

有没有办法让用户输入的内容为变量。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

试试这个..您需要使用get_text()来获取输入。

要在用户点击Return后捕获用户输入,只需评估update() - 方法的返回值 - 它总是为False,除非用户点击Return,然后它为True。要获取输入的文本,请使用get_text()。例如:

if mathsanswer.update(events):
    print(mathsanswer.get_text())