使按钮功能运行一次

时间:2016-06-29 02:29:07

标签: python-3.x pygame mouseevent

点击后我无法使按钮功能运行一次。只要鼠标按钮关闭,它就会在功能循环中运行直到释放。我只希望每次点击都能完成一次循环。这是代码:

TypeError: 'int' object has no attribute '__getitem__'

print(“hey”)如果你在重复循环中点击的速度尽可能快地打印大约3次。

1 个答案:

答案 0 :(得分:0)

只要按住鼠标,

pygame.mouse.get_pressed()将返回True。假设这会检查每一帧,它会为多个帧返回1或True,从而导致您的print语句多次出现。

if event.type == pygame.MOUSEBUTTONDOWN:

您注释掉的这一行是您应该使用的那一行。它仅在实际单击鼠标时激活,而按下时才激活。请注意,要使其正常工作,您必须在此行之前使用for event in pygame.event.get()之类的循环。

因此,您基本上需要做的是删除click = pygame.mouse.get_pressed()并将if click[0] == 1替换为您注释掉的行。希望这有效:)