Estoy tratando de ubicar el mouse dentro de un panel, como en la parte superior izquierda del panel = x/y 0,0.Buscar la posición del mouse relativo a un panel
Lo que tengo en el momento da la posición en toda la pantalla, por lo que dependiendo de dónde se encuentre el panel (que está en un marco) en la pantalla, las coordenadas son diferentes. Supongo que podrías agregar a las coordenadas x/y para dar cuenta de esto, pero esto parece una solución desordenada. ¿Alguien puede ayudar?
Aquí está el mouseListener que estoy usando, que se ha agregado al panel.
private class MouseListener extends MouseAdapter
{
public void mouseClicked(MouseEvent e)
{
// Finds the location of the mouse
PointerInfo a = MouseInfo.getPointerInfo();
Point b = a.getLocation();
// Gets the x -> and y co-ordinates
int x = (int) b.getX();
int y = (int) b.getY();
System.out.println("Mouse x: " + x);
System.out.println("Mouse y: " + y);
// Determines which tile the click occured on
int xTile = x/tileSize;
int yTile = y/tileSize;
System.out.println("X Tile: " + xTile);
System.out.println("Y Tile: " + yTile);
}
}
¡Usted, señor, es un caballero y un erudito! – DMCH