我一直在闲暇时间使用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>
有没有办法让用户输入的内容为变量。
感谢您的帮助。
答案 0 :(得分:1)
试试这个..您需要使用get_text()
来获取输入。
要在用户点击Return后捕获用户输入,只需评估update() - 方法的返回值 - 它总是为False,除非用户点击Return,然后它为True。要获取输入的文本,请使用get_text()。例如:
if mathsanswer.update(events):
print(mathsanswer.get_text())