Bonjour,
Dans mon appli, je veux afficher une JWindow en-dessous d'un point de mon composant, lors d'un MouseMoved sur celui-ci. En gros, je souhaite faire un "hint" élaboré avec une fenêtre à moi.
Tout fonctionne très bien sous Windows, ainsi que sous Linux sans compiz activé. Mais dès que j'active compiz, la fenêtre s'affiche à un mauvais endroit : l'endroit où elle devrait s'afficher si la fenêtre maître n'avait pas été déplacée depuis sa création.
Cela semble être un bug connu de la méthode getLocationOnScreen() avec compiz. J'ai aussi essayé SwingUtilities.convertPointToScreen, mais évidemment celle-ci utilise getLocationOnScreen()
Donc je cherche un moyen de contourner ce bug. Utiliser une autre méthode, ou je ne sais quoi, qui me permettrait de connaître la position écran d'un point sans passer par ces méthodes buguées. Je n'ai trouvé aucune solution sur Internet jusqu'à présent.
Une autre alternative serait de réussir à positionner la JWindow relativement à mon composant, si c'est possible et que cette autre solution ne passe pas elle-même par getLocationOnScreen().
d'avance
Partager