从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
”。
什么想法可能是错的?
我安装了几个键盘布局,我确信当它发生时我会使用“英语”。
如果您确定自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':
...