如何从 PyGame 窗口获取输入?

如何从 PyGame 窗口获取输入?

我是 PyGame 新手。我希望我的 PyGame 程序要求我在 GUI 屏幕上输入,这样当您执行程序时,您将获得 shell 和 PyGame,我不想将输入提供给 shell。我想将其提供给 PyGame GUI。我的输入可以是字符串或整数。我该怎么做?

答案1

易文是一个简单易用的 PyGame 文本输入库。运行时非常容易包含在您自己的程序中。您可以使用以下命令将 EzText 项目克隆到本地目录中:

sudo apt install git
git clone https://github.com/ffavela/eztext.git

如果您按下Return它将把输入的字符串存储在一个变量中,如果您通过添加标记为粗体文本的字符串来修改源代码。

def 更新(自身,事件):
    """ 根据传递的事件更新输入 """
    对于事件中的事件:
        如果事件.类型==KEYUP:
            如果 event.key == K_LSHIFT 或 event.key == K_RSHIFT: self.shifted = False
        如果事件.类型==KEYDOWN:
            如果 event.key == K_BACKSPACE: self.value = self.value[:-1]
            elif event.key == K_LSHIFT 或 event.key == K_RSHIFT: self.shifted = True
            elif 事件.key == K_SPACE: self.value += ' '
            elif event.key == K_RETURN: 返回 self.value

相关内容