为了账号安全,请及时绑定邮箱和手机立即绑定

如何在处理3中检查鼠标是否在画布上?

如何在处理3中检查鼠标是否在画布上?

牛魔王的故事 2022-08-03 10:21:48
我想写一个函数,如果鼠标在画布上,如果不是,则返回。truefalse我的解决方案基本上看起来像这样:import java.awt.MouseInfo;Point globalMouse;boolean mouseOverCanvass() {    globalMouse = MouseInfo.getPointerInfo().getLocation();     boolean mouseInXRange = (canvass.X < globalMouse.X) && (globalMouse.X < canvass.X + width);    boolean mouseInYRange = (canvass.Y < globalMouse.Y) && (globalMouse.Y < canvass.Y + height);    if (mouseInXRange && mouseInYRange) {        return true;    } else {        return false;    }}问题是我找不到画布的位置。我找到了这个解决方案来获取窗口的位置,但这提供了包括顶部栏在内的坐标,而我想要该窗口中画布的位置。
查看完整描述

1 回答

?
繁花不似锦

TA贡献1851条经验 获得超4个赞

重写 PApplet 提供的 mouseEntered() 和 mouseExited() 方法,使用布尔变量跟踪当前鼠标悬停在画布上的状态:


boolean mouse_over = false;


@Override

public void mouseEntered() {

    mouse_over = true;

}


@Override

public void mouseExited() {

    mouse_over = false;

}


查看完整回答
反对 回复 2022-08-03
  • 1 回答
  • 0 关注
  • 79 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号