Slick2D按钮被释放并调用一个函数

时间:2013-10-16 14:39:20

标签: java position mouse slick2d

我尝试创建一个矩形(作为按钮),然后使用鼠标位置检查鼠标是否在按钮处然后退出游戏。

这是我试过的

if(Mouse.isButtonDown(0)) {
    downFlag = true;
}

if ((posX>120 && posX<420)&&(posY>120 && posY<180)) {
    if (!Mouse.isButtonDown(0) && downFlag) {
        gc.exit();
    }
}

但是,如果我在按钮外单击鼠标,然后将鼠标移动到按钮,它仍然会被注册,因为鼠标单击按钮本身。
我是否需要添加一个计时器来检查鼠标的释放时间?就像在几毫秒后将downFlag变为假,鼠标被点击了?

1 个答案:

答案 0 :(得分:0)

考虑在边界检查中使用Input的{​​{1}}。 如果你不喜欢它的感觉,请使用当前的方法,但添加边界检查,以便在第一次检查鼠标时。如果你有多个按钮,它需要大量的簿记。