repaint() la Méthode en Java
Je joue avec le Java de la classe graphics un peu et je me demandais juste--quand est-il nécessaire d'appeler la méthode repaint()
? J'ai essayé de commenter et qu'il n'a pas semblé affecter ma sortie de l'interface graphique. Je l'ai vu beaucoup utilisé dans les IHM Java code que j'ai lu, si. Quelqu'un aurait-il l'esprit expliquant quand l'utiliser et quand ne pas l'utiliser?
OriginalL'auteur Erica Dohring | 2012-06-01
Vous devez vous connecter pour publier un commentaire.
La
repaint()
actualise l'affichage (composant), de sorte que chaque fois que vous effectuez un changement sur le composant, vous devez l'appeler. Par exemple, si vous faites pivoter la partie graphique, vous devez faire un appel àrepaint()
afin de voir le changement sur le contenant du composantC'est ce que je ferais probablement: Obtenir la coordonnée du point, j'ai cliqué, donnée par
getX()
etgetY()
. Puis créer un graphique g qui sera la zone que je veux montrer, etrepain(g)
.OriginalL'auteur Joseph Elcid
Il n'est jamais vraiment nécessaire dans la plupart des applications swing, car ils gèrent automatiquement (pour les opérations courantes telles que la modification de valeurs de texte sur les boutons et l'ajout de données à une zone de liste).
En général, c'est seulement si vous avez fait une sorte de changement qui swing ne sont pas automatiquement pick - up par exemple, vous n'êtes pas à l'aide d'un gestionnaire de mise en page et sont redimensionnement de composants manuellement (parce que, normalement, le gestionnaire de présentation repeint ses composants si nécessaire).
OriginalL'auteur Tharwen
Lorsque vous lancez votre application, vous "peinture" de votre interface.
Vous devez appeler
repaint()
lorsque vous souhaitez redessiner votre GUI parce que vous avez changé quelque chose à l'intérieur.Si vous souhaitez supprimer un bouton, vous devez le supprimer (ou invisible), vous devez appeler
validate()
ourepaint()
de re-calculer (re-dessiner) de l'interface graphique.OriginalL'auteur Mualig
Le seul truc que je peux penser de:
Supposons que vous avez le code ci-dessus dans le constructeur d'un JDialog. Ce updateStatusLabel n'est que la vérification d'une variable booléenne, public ou réglable au moyen d'une méthode, et de définir l'icône d'un JLabel dans la base de tels booléenne. Si vous n'avez pas le valider et de le repeindre le GUI, la modification ne sera pas montré jusqu'à un autre événement, plus il est probable qu'un déclenchées par l'utilisateur, est levée. Et, si l'utilisateur est en attente de l'étiquette pour afficher une icône certaine parce que de, disons, il a indiqué que si un périphérique est accessible à travers l'Internet, il/elle va jamais interagir (ou, au moins, vous êtes retarder les interactions tellement).
OriginalL'auteur Jorge Antonio Díaz-Benito