在我从ubuntu 16.04升级到ubuntu 18.04之后,以下 pygame 代码无法正常工作。
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
print "KEY:", event.key
if event.key == pygame.K_ESCAPE:
# The code here is executed when "Esc" is pressed.
elif event.key == pygame.K_f:
# Never happens even when "f" is pressed.
当我按Key: 193
而不是预期的“ f
”时,代码将显示“ Key: 102
”。
有什么主意吗?
我已经安装了几种键盘布局,并且可以确定在发生这种情况时我会使用“英语”。
答案 0 :(得分:1)
如果您完全确定自从Ubuntu版本更改以来您的键盘配置没有更改,那么您可以通过比较unicode值来解决此问题:
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
print "KEY:", event.key
if event.key == pygame.K_ESCAPE:
# The code here is executed when "Esc" is pressed.
elif event.unicode == 'f':
...