python pygame鼠标点击_python – 如何在PyGame中响应鼠标点击sprite?

我通常给我的可点击对象一个click功能,就像你的例子一样.我将所有这些对象放在一个列表中,以便在调用click函数时轻松迭代.

在检查您按哪个鼠标按钮时,请使用事件的按钮属性.

import pygame

from pygame.locals import * #This lets you use pygame's constants directly.

for event in pygame.event.get():

if event.type == MOUSEBUTTONDOWN: #Better to seperate to a new if statement aswell, since there's more buttons that can be clicked and makes for cleaner code.

if event.button == 1:

for object in clickableObjectsList:

object.clickCheck(event.pos)

我想说这是推荐的做法.点击只注册一次,所以如果用户用一个按钮“拖动”,它就不会告诉你的精灵.使用MOUSEBUTTONDOWN事件设置为true的布尔值可以轻松完成,而使用MOUSEBUTTONUP设置为false.为了激活它们的功能而迭代了“可拖动”对象……等等.

但是,如果您不想使用事件处理程序,可以让更新函数检查输入:

pygame.mouse.get_pos()

pygame.mouse.get_pressed().

这对于较大的项目来说是一个坏主意,因为它可能很难找到错误.更好地将事件保存在一个地方.较小的游戏,如简单的街机游戏,使用探测风格可能更有意义.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值