簡體   English   中英

如何在每幀上獲取相對於JPanel的鼠標位置

[英]How to get mouse location relative to the JPanel on every frame

現在我正在做這個

mouseX = MouseInfo.getPointerInfo().getLocation().x;

但是如果我移動JFrame,這將不再起作用。

另外,我每次移動鼠標時都需要鼠標位置,因為我想在游戲中拖動東西,因此鼠標事件將不起作用。

如何獲得每幀相對於JPanel的鼠標位置?


編輯1:好的,我知道了。 我將鼠標位置減去屏幕上的jframe位置,然后將鼠標定位在jpanel上

問題是“如何在每幀上獲得相對於JPanel的鼠標位置”。

因此,您不一定每一幀都有鼠標事件,因此您必須輪詢鼠標位置(相對於屏幕),並計算相對位置(相對於JPanel)。

總而言之,這讓我認為您想要這樣做:

Point p = MouseInfo.getPointerInfo().getLocation();
SwingUtilities.convertPointFromScreen(p, yourJPanel);
// Then use 'p', which was modified by method call above

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM