如何使用pygame.MOUSEBUTTONDOWN?

2024-05-17 14:15:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我的简单问题是,如何使用精灵或项目上的pygame.MOUSEBUTTONDOWN触发事件?

例如,我有一个项目,当我用鼠标按下对象时,希望音乐开始。


Tags: 项目对象音乐事件鼠标pygame精灵mousebuttondown
3条回答

你需要在主循环中轮询事件,当你检测到一个mousebutton事件时,你需要检查它是否在你想要的精灵上,如果是,那么就开始音乐。

在主循环中使用事件

for event in pygame.event.get():
    if event.type == MOUSEBUTTONDOWN :
        play_music()

http://www.pygame.org/docs/ref/event.html

其中buttons是您的sprite组,它具有^{}s。您可以为每个按钮上的不同声音定义click()函数。

for event in pygame.event.get():    
    if event.type == MOUSEBUTTONDOWN :
        x, y = event.pos
        for button in buttons:
            if button.rect.collidepoint(x, y):
                print("play sound here.")

                # or, if button handles on clicking, by a defined function:
                button.click()

相关问题 更多 >