Python 在pygame中同时检测两个CTRL键
我尝试检测是否同时按下了两个CTRL键Python 在pygame中同时检测两个CTRL键,python,python-3.x,pygame,Python,Python 3.x,Pygame,我尝试检测是否同时按下了两个CTRL键 import pygame pygame.init() screen = pygame.display.set_mode((100,100)) run = True while run: for event in pygame.event.get(): if event.type == pygame.QUIT: run = False if event.type == pygame.KE
import pygame
pygame.init()
screen = pygame.display.set_mode((100,100))
run = True
while run:
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_RCTRL
print("RIGHT CTRL pressed")
if event.key == pygame.K_LCTRL
print("LEFT CTRL pressed")
还尝试:
if event.type == pygame.KEYDOWN:
if pygame.key.get_mods() & pygame.KMOD_RCTRL:
print("RIGHT CTRL pressed")
if pygame.key.get_mods() & pygame.KMOD_LCTRL:
print("LEFT CTRL pressed")
if event.type == pygame.KEYDOWN:
if pygame.key.get_mods() & pygame.KMOD_LCTRL and pygame.key.get_mods() & pygame.KMOD_RCTRL:
print("LEFT & RIGHT CTRL pressed")
还尝试:
if event.type == pygame.KEYDOWN:
if pygame.key.get_mods() & pygame.KMOD_RCTRL:
print("RIGHT CTRL pressed")
if pygame.key.get_mods() & pygame.KMOD_LCTRL:
print("LEFT CTRL pressed")
if event.type == pygame.KEYDOWN:
if pygame.key.get_mods() & pygame.KMOD_LCTRL and pygame.key.get_mods() & pygame.KMOD_RCTRL:
print("LEFT & RIGHT CTRL pressed")
这些都不起作用
有人能帮忙吗?谢谢。用K_LCTRL替换KMOD_LCTRL它们似乎根本检测不到。一次只能按一个键,如果两个键都按住了,则不会为我生成任何按键事件。我对此进行了尝试,无法检测到同时按下左右控制键。还要注意,KEYDOWN
事件
有一个mods
参数,因此您无需多次调用get_mods()
。在我看来,当一个重复的mod键被按下时,它会被忽略,直到所有的键都被释放。谢谢你查看它。