当前位置: 首页 > 知识库问答 >
问题:

PYTHON-PYGAME:如何知道鼠标是否点击了图像?[副本]

百里鸿祯
2023-03-14

我正在做一个基本的游戏,如果我点击一张牌,就会显示一张图片。这些照片是随机挑选的。到目前为止,我已经将随机图片分配给一张卡片,卡片正面朝下显示。因此,如果我单击卡片,我希望显示指定的图片(在字典中)。

我想知道如何检测我是否点击了(卡片的)图像,因为图像的x,y坐标在左上角。现在,我正试图找到一种方法,使用鼠标点击的xy坐标来检测图像是否被点击。有没有一种方法可以使用“碰撞”或使事情变得太复杂?我是一名初级程序员,所以我仍在努力学习python和pygame:|

共有1个答案

阴永逸
2023-03-14

使用碰撞功能代替硬编码坐标/使用范围:

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()
        if event.type == pygame.MOUSEBUTTONDOWN:
            # Set the x, y postions of the mouse click
            x, y = event.pos
            if ball.get_rect().collidepoint(x, y):
                # do swap 
 类似资料:
  • 从pygame的api来看,它有: 但是没有办法区分右点击和左点击?

  • 我想知道如何编写代码来检测鼠标点击精灵。例如:

  • 问题内容: 我正在学习Pygame制作带有Python的游戏。但是,我遇到了一个问题。我正在尝试检测播放器当前何时单击屏幕,但是我的代码无法正常工作。我的代码实际上是搞砸了,还是我正在使用的在线Pygame编译器? 当我运行此代码时,输​​出控制台在每秒几千次内向文本“您正在单击”发送垃圾邮件。即使我没有单击屏幕,它仍然会显示此信息。即使我的鼠标是不是 在 屏幕上。相同的文字。一遍又一遍。Pyga

  • (我已经删除了上一个,所以我想你可以在编辑中找到它) 编辑 所以按照bad_coder在评论中告诉的以及他分享的链接中的大多数答案,我点击了“选项显示所有”,我得到了这个 1) 这里唯一有意义的是点击“”按钮,所以我点击了它 2) 现在我应该用路径替换突出显示的部分(换句话说,我在cmd中键入“where python”后得到的路径) 3) 这就是我发现的。那么我应该在突出显示的部分复制并粘贴哪一

  • 问题是:这种方法是信息窗口内容的一般实现,但每个标记都要显示自己的信息。因此,据我所知,我必须在getInfoContents(Marker Marker)上检测哪些标记被单击,以便从我的数据结构中加载必要的信息以在信息窗口上显示。问题是:我如何识别点击的标记'Marker'代表什么实体?我的意思是,只有getInfoContents上的对象标记被触发以显示信息窗口,我如何检测哪个是要显示的正确信

  • 我有一个带有,(”或)的表单,。。。下拉菜单()。。我想根据填充/检查的输入量显示不同的div。我写这篇文章是为了输入()按id选择输入id,但如何才能对和