Trouver la Position de la Souris par rapport à un panneau

Je vais essayer d'obtenir la position du curseur souris à l'intérieur d'un groupe, comme dans la partie supérieure gauche du panneau = x/y 0,0.

Ce que j'ai à la minute donne la position sur la totalité de l'écran, donc selon l'endroit où le panneau (qui est dans un cadre (frame) est sur l'écran, les coordonnées sont différentes. Je suppose que vous pourriez ajouter à l'x/y de coordonnées pour en tenir compte, mais ce qui semble comme un malpropre de la solution. Quelqu'un peut-il aider?

Voici le mouseListener je suis à l'aide, qui a été ajouté au panneau.

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);

    }
}

OriginalL'auteur DMCH | 2012-10-12