Java 获取鼠标&x27;s位置返回不带窗口栏的位置

Java 获取鼠标&x27;s位置返回不带窗口栏的位置,java,mouse,mouselistener,mouse-listeners,Java,Mouse,Mouselistener,Mouse Listeners,我正在制作一个小盒子,你可以在JFrame上拖动。 我使用普通的MouseListener(MouseListener和MouseMotionListener),当我得到位置时,我认为它包括顶部的窗口栏,并将其添加到Y值中。与X值和窗口侧面相同。这将导致框移动到鼠标右下角的位置。如何解决这个问题?我想你是说盒子左上角的位置等于鼠标的位置?在这种情况下,您应该在x轴和y轴上去掉方框大小的一半 x值是框的最左侧,y值是框的最顶部。大小是(大小)右侧和下方的更多像素 Rectangle r = new

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

我想你是说盒子左上角的位置等于鼠标的位置?在这种情况下,您应该在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);