[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
avatar
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...




avatar
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