【发布时间】:2011-02-09 22:11:52
【问题描述】:
我有一个需要文本输入的 Pygame 程序。它这样做的方式是获取键盘输入,当按下某个键时,它会呈现该键,以便将其添加到屏幕上。本质上它就像一个文本字段。问题是,当你按住 shift 时,它什么也没做。我意识到这是因为程序忽略了 shift 输入,而是在数字小于 128 时写入文本。我曾想过在按下 shift 时设置一个变量,如果它是真的则大写,但字符串大写只适用于字母,而不是东西比如数字或分号。如果按下 shift 或其他什么,我是否可以在键入的 ASCII 数字中添加一个数字来修改它?
编辑:
本质上,我只是想知道是否有一个数字可以添加到 ascii 字符中,以使其看起来像是在按住 shift 键的情况下键入的。在阅读了我最初的问题后,它似乎有点晦涩。
【问题讨论】:
-
“要添加到 ascii 字符的数字”是
32。将32添加到'a'将得到'A'。但是,您仍然应该尝试让您的 shift 键正常工作。 Pygame 非常擅长识别修改键。这才是你应该解决的真正问题。 -
和我的钥匙无关。我认为 pygame 没有“pygame.K_A”,只有“pygame.K_a”这一事实足以证明这一点。按下 a 时,它无法识别换档。我肯定知道。
-
我错了。对不起泽维尔。我不知道“event.unicode”属性。知道我这样做了,一切正常。
标签: python ascii character pygame shift