[Dúvida] Posição do Mouse em pc com multi-monitores

Boa tarde pessoal, estou desenvolvendo uma aplicação de teste que me mostra o monitor (Device) que o mouse se encontra, e mostra também a posição dele.

Consegui pegar o monitor em que o mouse está através do comando:

MouseIngo.getPointerInfo().getDevice();

E buscando a posição do mouse através do comando:

MouseInfo.getPointerInfo().getLocation()

Problema: A posição do mouse que me é retornada é com base no monitor principal, quando eu passo o cursor para outro monitor (extendido), a posição do mouse fica negativa.

Pergunta: Como pegar a posição do cursor com base no monitor em que ele se encontra?

Espero ter sido claro, obrigado!

[quote=pisicotico]Boa tarde pessoal, estou desenvolvendo uma aplicação de teste que me mostra o monitor (Device) que o mouse se encontra, e mostra também a posição dele.

Consegui pegar o monitor em que o mouse está através do comando:

MouseIngo.getPointerInfo().getDevice();

E buscando a posição do mouse através do comando:

MouseInfo.getPointerInfo().getLocation()

Problema: A posição do mouse que me é retornada é com base no monitor principal, quando eu passo o cursor para outro monitor (extendido), a posição do mouse fica negativa.

Pergunta: Como pegar a posição do cursor com base no monitor em que ele se encontra?

Espero ter sido claro, obrigado![/quote]
Subtraia das coordenadas recebidas a resolução do monitor principal!

xD

Sério! Se o monitor principal tem 800 de largura e o método retornou posição 1000, 1000 - 800 = 200, que é a posição x no outro monitor!

Provavelmente isso depende do layout usado pra dividir os monitores (clone, extend, etc…) pelo driver da placa de vídeo, que não deve fornecer essa informação nativamente, mas é uma conta tão simples que seria desnecessário que houvesse um método nativo para isso…

:wink: