我在窗口內有一個畫布。該窗口是全屏幕,但畫布不是。我需要將鼠標位置放置在畫布內,但不要放在窗口內。我該怎麼做呢?在畫布中獲取鼠標位置(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;
絕對不需要聽衆。 如果您對此有任何疑問,請隨時發表評論。