我在窗口内有一个画布。该窗口是全屏幕,但画布不是。我需要将鼠标位置放置在画布内,但不要放在窗口内。我该怎么做呢?在画布中获取鼠标位置(java)
即使鼠标没有移动,我也需要每秒获取一次鼠标位置,所以使用MouseMoved侦听器并不够好。
有没有办法在画布中获得鼠标位置,而无需调用任何mouselistener?
我在窗口内有一个画布。该窗口是全屏幕,但画布不是。我需要将鼠标位置放置在画布内,但不要放在窗口内。我该怎么做呢?在画布中获取鼠标位置(java)
即使鼠标没有移动,我也需要每秒获取一次鼠标位置,所以使用MouseMoved侦听器并不够好。
有没有办法在画布中获得鼠标位置,而无需调用任何mouselistener?
存储鼠标位置。如果它没有移动,那么位置是一样的。然后使用鼠标移动的动作侦听器更新您存储的鼠标位置状态,因为它发生变化。
这里只是一个简单的例子,说明我该怎么做。起初:
获取Jframe的组件:
Component[] components = yourJFrame.getComponents();
让你的画布(注:如果您添加的画布前添加一些东西,它不会是伪add : button1, add:button2, add:canvas
组件0.1示例 - 帆布=分量[2]):
Component canvas = components[0];
获取鼠标位置:
int mouse_x=MouseInfo.getPointerInfo().getLocation().x-canvas.getLocationOnScreen().x;
int mouse_y=MouseInfo.getPointerInfo().getLocation().y-canvas.getLocationOnScreen().y;
绝对不需要听众。 如果您对此有任何疑问,请随时发表评论。