fnxsawyer
Messages postés3Date d'inscriptionlundi 7 août 2006StatutMembreDernière intervention29 janvier 2010
-
28 janv. 2010 à 22:13
fnxsawyer
Messages postés3Date d'inscriptionlundi 7 août 2006StatutMembreDernière intervention29 janvier 2010
-
29 janv. 2010 à 20:06
Bonjour à tous,
Je suis en train de développer une application qui requiert de redessiner tous les composants les plus simples.
Je suis en train de redessiner une barre de défilement verticale.
J'ai donc créé un JPanel dans lequel à l'aide de la fonction "paintComponent(Graphics g)" je dessine une image en fond. Puis j'ajoute un JLayeredPane pour pouvoir ajouter à l'intérieur même de ce JPanel un autre JPanel qui lui représente la barre de défilement qui suit la souris.
Jusque là tout va bien ;p
Grâce aux systèmes évènementielle "MouseMotion" et "MouseListener", j'arrive à déplacer l'image facilement grâce à la modification d'une variable quand je déplace la souris. Cette variable étant affecté au coordonné en Y de l'image puisque c'est une barre verticale :
Fonction "PaintComponent" dont la barre bouge sur l'axe des ordonnée grace à la variable Y
Ici, en effet lorsque je déplace ma souris l'image s'arrête belle et bien, mais parfois quand je vais vite à déplacer la souris, l'image se bloque avant, ou après la limite donnée. sans aucune raison puisqu'elle se débloque parfois.
Bizarre.
Serait-ce un problème de rafraichissement (repaint) dont je tient à signaler que "parent.repaint()" représente l'image en fond.
Personnellement je ne pense pas.
Par contre je me demande s'il ne faudrait pas jouer avec un "timer" pour donner une fluidité dans le mouvement qui fais que la souris est récupéré par la fonction avec une grande fluidité pour ainsi valider la condition ..