Pygame 捕捉 Enter 按钮

Posted

技术标签:

【中文标题】Pygame 捕捉 Enter 按钮【英文标题】:Pygame catching Enter Button 【发布时间】:2015-02-24 05:28:09 【问题描述】:

我试图用 pygame 捕捉 Enter 按钮,而不是键盘上的 Enter 按钮,我想要的是 Backspace 按钮下的 Enter 按钮。它们不一样,因为当我在键盘上按下 Enter 按钮时,其他 Enter 按钮不起作用。

http://www.pygame.org/docs/ref/key.html

有一个关于按键的文档,但只有键盘输入按钮。我试过这些代码:

这适用于键盘输入按钮,但其他输入按钮不可用 工作:

if event.type==pygame.KEYDOWN:
    if event.key==pygame.K_KP_ENTER:
        #some codes

我试图用这些代码捕捉另一个 Enter 按钮(绝望):

if event.type==pygame.KEYDOWN:
    if event.key==pygame.K_ENTER:
        #some codes

但当然会出现错误:

AttributeError: 'module' object has no attribute 'K_ENTER'

不知道如何捕捉 Backspace 下的 Enter 按钮。

【问题讨论】:

【参考方案1】:

我认为您想要 K_RETURN ,因为退格键下的回车键有时被称为“回车”,来自旧打字机术语。

【讨论】:

非常感谢您的回答。但是在文档中,它被称为 K_RETURN \r return ,为什么? \r 是回车的转义表示,ord("\r")=10,其中\n 是换行的转义表示,ord("\n")=13 知道了,如果他们放一个像“Its also Enter key!”这样的字符串会更好【参考方案2】:

根据 pygame.org,K_KP_ENTER -> 是 Key Pad Enter ||K_RETURN -> 基本回车键

for event in pygame.event.get():
   if event.type == pygame.KEYDOWN:
       if event.key == pygame.K_RETURN:    
           #Your code here

Here is all the key words in pygame

【讨论】:

【参考方案3】:

在我的环境中(python 3.8.3,Windows 10),K_RETURN 枚举有效!

if event.type == pygame.KEYDOWN:
    if event.key == pygame.K_RETURN:
        # some codes

【讨论】:

以上是关于Pygame 捕捉 Enter 按钮的主要内容,如果未能解决你的问题,请参考以下文章

使用 Pygame Zero 构建一个捕捉游戏(详细步骤含源码)

异常捕捉

捕捉 UINavigationController 本机后退按钮操作

如何在本机反应中捕捉 ios 设备按钮按下?

为啥我无法捕捉工具栏事件?

CAD具体的透明命令和使用方法