[JAVA] repaint / updateUI

Voir le sujet précédent Voir le sujet suivant Aller en bas

resolu [JAVA] repaint / updateUI

Message  Nicky le Jeu 03 Nov 2011, 14:31

Bonjour,

Je voulais juste savoir qu'elle était la différence entre ses 2 méthodes.

Car le résultat semble etre le même (dans une utilisation simple comme le TD2 par exemple) mais il y en a t il une plus légère que l'autre?

repaint() appel dès que possible la méthode paintComponant(Graphics).

Tant dis que updateUI:

public void updateUI()
Resets the UI property with a value from the current look and feel.

Cela veut il dire que updateUI recrée le composant au lieux de simplement le mettre a jour comme le ferais repaint()?

Si quelqu'un peu m'éclairer Smile je suis preneur.


Dernière édition par Nicky le Ven 04 Nov 2011, 07:41, édité 1 fois

Nicky

Nombre de messages : 300
Age : 29
Prénom : Pierre
Statut : Tout fini ! 2012
Localisation : Bruxelles / Chimay
Date d'inscription : 18/03/2008

Revenir en haut Aller en bas

resolu Re: [JAVA] repaint / updateUI

Message  aro le Jeu 03 Nov 2011, 18:06

Nicky a écrit:Car le résultat semble etre le même (dans une utilisation simple comme le TD2 par exemple) mais il y en a t il une plus légère que l'autre?
Oui, clairement : updateUI est beaucoup plus lourd et tellement souvent inutile.
Nicky a écrit:Cela veut il dire que updateUI recrée le composant au lieux de simplement le mettre a jour comme le ferais repaint()?
Non, certainement pas !

En bref
  • repaint seulement si c'est nécessaire (changer une propriété d'un composant swing entraine un repaint automatique)
  • revalidate si nécessaire (ce pourrait être le cas si des composants sont ajoutés/enlevés pendant l'exécution) éventuellement suivi d'un repaint
  • updateUI que si le look and feel est changé pendant l'exécution. Ce qui n'est vraiment pas le cas ni pour le TD2, ni le TD3, ni...





aro

Nombre de messages : 557
Prénom : Anne
Statut : Prof
Date d'inscription : 06/09/2008

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum