Python 如何制作一个;“鼠标按下时”;pygame中的循环

Python 如何制作一个;“鼠标按下时”;pygame中的循环,python,python-3.x,pygame,Python,Python 3.x,Pygame,所以我现在有一个绘图应用程序中的喷枪代码。当该功能处于活动状态时,它应该在画布上绘制,基本上就像喷枪一样。但现在,我不知道如何让pygame检测鼠标向下或向上,并在其中进行一个while循环。代码如下: def airbrush(): airbrush = True cur = pygame.mouse.get_pos() click = pygame.mouse.get_pressed() while click == True: pygame.

所以我现在有一个绘图应用程序中的喷枪代码。当该功能处于活动状态时,它应该在画布上绘制,基本上就像喷枪一样。但现在,我不知道如何让pygame检测鼠标向下或向上,并在其中进行一个while循环。代码如下:

def airbrush():
    airbrush = True
    cur = pygame.mouse.get_pos()
    click = pygame.mouse.get_pressed()
    while click == True:
        pygame.draw.circle(gameDisplay, colorChosen, (cur[0] + random.randrange(brushSize), cur[1] + random.randrange(brushSize)), random.randrange(1, 5))
        pygame.display.update()
        clock.tick(60)

现在,我有一个“whileclick”不起作用。我应该用什么来替换“单击”以使其工作,以便在按住鼠标时进行绘制,但当鼠标“向上”时停止?

调用时,将对返回的状态进行一次评估。
pygame.mouse.get_pressed()
的返回值是按钮状态的元组

不要在函数中实现单独的事件处理。在主循环中执行事件处理:

done=False
虽然没有这样做:
时钟滴答(60)
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
完成=正确
喷枪()
pygame.display.flip()
在功能
喷枪中评估当前帧的按钮(如左按钮)的当前状态:

def喷枪():
喷枪=正确
cur=pygame.mouse.get_pos()
click=pygame.mouse.get_pressed()
如果单击[0]==True:#计算左按钮
pygame.draw.circle(游戏显示,颜色选择,(cur[0]+random.randrange(brushSize),cur[1]+random.randrange(brushSize)),random.randrange(1,5))