Ubuntu pygame 获得 event.key 个值
Ubuntu pygame gets event.key values
在我从 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.
当我按 f
而不是预期的“Key: 102
”时,代码打印“Key: 193
”。
有什么想法是错误的吗?
我安装了几种键盘布局,我确信我会在发生这种情况时使用 "English"。
如果您完全确定您的键盘配置自 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':
...
在我从 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.
当我按 f
而不是预期的“Key: 102
”时,代码打印“Key: 193
”。
有什么想法是错误的吗?
我安装了几种键盘布局,我确信我会在发生这种情况时使用 "English"。
如果您完全确定您的键盘配置自 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':
...