测试在Python中单击一个rect

时间:2011-12-09 10:43:41

标签: python click pygame

我无法找到一种方法来检测玩家是否在Pygame中点击了一个矩形。我试过了

    self.mouserect=(pygame.mouse.get_pos(), 8,8)

然后再

    if self.click: #(this is true if mouse button is down)
        if self.mouserect.colliderect(self.a_thing_to_click_on.rect):
            do_stuff

但是这给了我一个AttributeError:'tuple'对象没有属性'colliderect'。我做错了什么?

2 个答案:

答案 0 :(得分:1)

您是否尝试使用rect.collidepoint()

if self.click: #(this is true if mouse button is down)
   if self.a_thing_to_click_on.rect.collidepoint(pygame.mouse.get_pos()):

答案 1 :(得分:0)

您要将一个元组分配给self.mouserect,而不是Rect。解决方案是围绕它包裹Rect

self.mouserect=pygame.Rect(pygame.mouse.get_pos(), (8,8))