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

Posted

技术标签:

【中文标题】使用 pygame_textinput 模块获取用户输入值?【英文标题】:Obtaining a user input value with pygame_textinput module? 【发布时间】:2018-08-21 03:35:22 【问题描述】:

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

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

感谢您的帮助。

【问题讨论】:

您使用什么代码来尝试将输入作为变量? @johnashu 我没有任何代码可以尝试将其作为变量获取。我所做的只是打印(数学答案),这是我得到那个值的时候。我不确定如何将其转换为用户输入的内容。 【参考方案1】:

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

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

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

【讨论】:

谢谢。完美运行。 你能选它作为正确答案吗?绿色的勾 :) 祝你游戏好运!

以上是关于使用 pygame_textinput 模块获取用户输入值?的主要内容,如果未能解决你的问题,请参考以下文章

LoRa模块能不能获取信号强度?

Python用WMI模块获取windowns系统信息

用Python脚本能获取Wifi密码么?能。

Python:仅使用 dir() 获取导入模块中定义的类?

使用Nginx自带的Realip模块获取用户真实IP

从 Go 的二进制文件中获取其依赖的模块信息