Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3840 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Comment faire pour que le repaint() ......

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment faire pour que le repaint() ......

n°241680
touflb
Posté le 08-11-2002 à 11:04:08  profilanswer
 

Je voudrais que le repaint de mon applet ne se fasse que lorsque la méthode repaint() elle même a terminée son propre déroulement. Je crois qu'il y a possiblité de créer un double buffer .. mais comment ?
Si qqun a une idée  :??:

mood
Publicité
Posté le 08-11-2002 à 11:04:08  profilanswer
 

n°241698
gfive
Posté le 08-11-2002 à 11:51:06  profilanswer
 

bah, c tout con....Au lieu de dessiner tes éléments sur le contexte graphique de ton composant, tu crées une image de la même taille que ton composant...ensuite, tu dessines dans cette image, puis, dans paint(), tu fais juste dessiner sur ton composant, le contenu de l'image....et tu recommences....
 
Ca donne qqchose dans ce goût là :
 
 

Code :
  1. // Méthode de dessin...
  2. public void paint(Graphics g) {
  3.     // On sette la font
  4.     g.setFont(parent.getFont());
  5.     // on update
  6.     update(g);
  7. }
  8.    
  9. public void update(Graphics g) {
  10.     // dessin sur l'image off screeen
  11.     paintOffScreen();
  12.     // On colle l'image off screen sur le contexte graphique courant (double buffering)
  13.     getGraphics().drawImage(offScreenImage, 0, 0, this);
  14. }
  15. // Dessin sur l'image off screen
  16. private void paintOffScreen() {
  17.     // Création de l'image.
  18.     if (offScreenImage == null) {
  19. offScreenImage = createImage(getSize().width, getSize().height);
  20.     }
  21.     // Récupération du Graphics  
  22.     Graphics g = offScreenImage.getGraphics();
  23. // Et là, tu dessines sur le Graphics obtenu...
  24. }

n°241784
touflb
Posté le 08-11-2002 à 15:00:14  profilanswer
 

Le pb c'est que j'ai des listeneur sur mon Canvas (l'element dans lequel je met mes compo graphiques) du coup le truc de l'image c'est pas l'idéal ...

n°242118
gfive
Posté le 09-11-2002 à 10:52:05  profilanswer
 

Mais ils écoutent quoi, tes listeners?? Des évènements souris, j'imagine??? A ce moment là, t'en a rien à foutre!! Réfléchit un moment, l'image, elle est dessinée dans le Graphocs du Canvas!! Donc, si tu cliques dedans, en fait, tu cliques sur le canvas...
 
Rassure toi, mes composants graphiques AWT un peu évolués (type, le tableau de l'autre topic) sont fait comme ça, et on peut cliquer dedans!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Comment faire pour que le repaint() ......

 

Sujets relatifs
[JAVA] repaint marche pas!![Java] Applet, reseau et repaint() : probleme
[JAVA] Repaint ne marche pas :(((( [Resolu] 
Plus de sujets relatifs à : Comment faire pour que le repaint() ......


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)