让鼠标的位置返回没有窗口栏的位置

时间:2014-11-27 18:52:38

标签: java mouse mouselistener mouse-listeners

我正在制作一个可以在JFrame上拖动的小盒子。 我使用普通的MouseListener(MouseListener和MouseMotionListener),当我得到位置时,我认为它包含顶部的窗口栏并将其添加到Y值。与X值和窗口侧面相同。这会导致框移动到鼠标右下角的位置。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我想你是说盒子左上角的位置等于鼠标的位置?在这种情况下,你应该在x和y轴上取掉一半大小的盒子。

x值是框的最左边,y值是框的最顶部。尺寸是(尺寸)更多像素在右侧和下方。

Rectangle r = new Rectange(mouseX, mouseY, sizex, sizey);

drawBox(r.x - r.width/2, r.y - r.height/2, r.width, r.height);
相关问题