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

Obtaining a user input value with pygame_textinput module?

我一直在业余时间使用 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>

有没有办法获取用户输入的变量。

感谢您的帮助。

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

要在用户点击 Return 后捕获用户输入,只需评估 update() 方法的 return 值 - 它始终为 False,除非用户点击 [=17] =],则为真。要获取输入的文本,请使用 get_text()。示例:

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