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