-
Mac et getLocation()
Bonjour,
Je developpe actuellement une petite application crossplatform en Java avec swing. Malheureusement j'ai un petit probleme avec getLocation() sous Mac OS (java 1.5.0_20).
Mon application est constituee d'une fenetre principale (JFrame).
Et 'coller' a gauche de cette JFrame j'affiche un JDialog (avec setUndecorate(true)). Lorsque l'utilisateur bouge la JFrame, le JDialog bouge egalement pour rester 'coller' a gauche.
Cela fonctionne parfaitement sous Windows, je check periodiquement la position de ma JFrame (getLocation()) et modifie la position du JDialog (setLocation).
Le soucis sous Mac c'est que getLocation() me retourne toujours la meme position lorsque l'utilisateur bouge la JFrame. Il faut attendre que l'utilisateur arrete de bouger la JFrame pour que getLocation() retroune les nouvelles coordonnees.
Quelqu'un a-t-il deja rencontre ce probleme? Avez-vous des suggestions pour regler ce problem?
Merci de votre aide.
Eco.
-
je crois que c'est du a l'os qui ne notifie pas l'application que sa fenetre a bougé tant que le bouton n'est pas laché ou que a fenetre n'arrete pas de bouger, question de performances :/. Comme toutes les applications sous mac os x se dessinent sur un buffer intermédiaire, mac os x n'a aucune difficulté à bouger juste le dessin de la fenetre (de la meme manier qu'il peut l'affiche dans exposé ou en miniature sur le dock)
-
Merci pour cette précision.
Je suppose que je n'ai plus qu'a faire un setUndecorate(true), recréer ma propre top bar comme ca je pourrais détecter le clic et la position de la sourie pour bouger mes 2 fenêtres.
Eco