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

  FORUM HardWare.fr
  Programmation
  Java

  Swing et le refraichissement.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Swing et le refraichissement.

n°725013
amauryxiv
Posté le 13-05-2004 à 18:23:36  profilanswer
 

Bonjour a tous. J'essaie de faire un petit jeu en java et je suis conduit a m'interroger sur comment marche le refraichissement chez Swing .
 
J'ai beau chercher, je ne comprends pas le role de la methode paint, ce qu'est le double-buffering et ce genre de chose.
 
Je vous donne un exemple tres simple:
 

Code :
  1. package graphics.rafraichissement;
  2. import java.awt.*;
  3. import javax.swing.*;
  4. public class EssaiRafraichissement extends javax.swing.JPanel {
  5.    
  6.     public EssaiRafraichissement() {
  7.         this.setPreferredSize(new Dimension(400, 400));
  8.     }
  9.    
  10.     public void paint(Graphics g) {
  11.         g.setColor(Color.RED);
  12.         g.drawLine(0, 0,  400, 400);
  13.     }
  14.    
  15.    
  16.     public static void main(String[] args) {
  17.         JFrame frame = new JFrame();
  18.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  19.         frame.setContentPane(new EssaiRafraichissement());
  20.         frame.pack();
  21.         frame.setVisible(true);
  22.        
  23.         JOptionPane.showMessageDialog(frame,"Bouger la fenetre" );
  24.     }
  25.    
  26. }


 
Ce programme trace une ligne diagonale dans une fentre et lance une boite de dialogue par dessus. Et bien vous constaterez qu'en bougeant ou fermant la boite de dialogue, la fentre mere n'est pas bien rafraichie. Comment on doit s'y prendre dans cet exemple ? Quelles methodes interviennent dans le rafraichissement d'un composant Swing ?
 
Merci d'avance a ceux qui sauront.

mood
Publicité
Posté le 13-05-2004 à 18:23:36  profilanswer
 

n°725029
nraynaud
lol
Posté le 13-05-2004 à 18:38:06  profilanswer
 

ratai, c'est pas paint() qu'il fallait réécrire.
C'est paintComponent().
http://java.sun.com/docs/books/tut [...] index.html
 
edit : en oubliant pas l'appel de super() dans paintComponent(), pour qu'il se démerde tout seul avec la transparence.


Message édité par nraynaud le 13-05-2004 à 18:40:12

---------------
trainoo.com, c'est fini
n°725034
amauryxiv
Posté le 13-05-2004 à 18:40:07  profilanswer
 

nraynaud a écrit :

ratai, c'est pas paint() qu'il fallait réécrire.
C'est paintComponent().
http://java.sun.com/docs/books/tut [...] index.html


 
Ben le probleme c'est que ca change strictement rien. Le resultat est le meme ........

n°725038
nraynaud
lol
Posté le 13-05-2004 à 18:44:17  profilanswer
 

pourquoi y'a un "setPreferedSize()" ?
 
Ton JPanel il doit être opaque si tu veux l'utiliser en contentPane, c'est marqué dans le section "rootpanes" du tutoriel.


---------------
trainoo.com, c'est fini
n°725041
amauryxiv
Posté le 13-05-2004 à 18:46:26  profilanswer
 

nraynaud a écrit :

pourquoi y'a un "setPreferedSize()" ?
 
Ton JPanel il doit être opaque si tu veux l'utiliser en contentPane, c'est marqué dans le section "rootpanes" du tutoriel.


 
Bon ben ca y est, je l'ai mis opaque. Mais ca change rien ....!

n°725045
nraynaud
lol
Posté le 13-05-2004 à 18:47:19  profilanswer
 

amauryxiv a écrit :

Bon ben ca y est, je l'ai mis opaque. Mais ca change rien ....!

on peut avoir une copie d'écran des défauts ?


---------------
trainoo.com, c'est fini
n°725083
amauryxiv
Posté le 13-05-2004 à 19:01:15  profilanswer
 

nraynaud a écrit :

on peut avoir une copie d'écran des défauts ?


 
Ben compilez le code et lancez le. Y en a pour trente secondes .

n°725090
nraynaud
lol
Posté le 13-05-2004 à 19:11:21  profilanswer
 

chez moi ça marche parfaitement.


---------------
trainoo.com, c'est fini
n°725132
amauryxiv
Posté le 13-05-2004 à 19:44:34  profilanswer
 

nraynaud a écrit :

chez moi ça marche parfaitement.


 
Comment ca ca marche ????????? Quand tu bouges ou que tu ferme la fenetre, t'as pas de salopperies a la place de la diagonale ?????

n°725139
nraynaud
lol
Posté le 13-05-2004 à 19:49:09  profilanswer
 

amauryxiv a écrit :

Comment ca ca marche ????????? Quand tu bouges ou que tu ferme la fenetre, t'as pas de salopperies a la place de la diagonale ?????

non, c'est bien pour ça que je te demande des copies d'écran.


---------------
trainoo.com, c'est fini
mood
Publicité
Posté le 13-05-2004 à 19:49:09  profilanswer
 

n°725158
amauryxiv
Posté le 13-05-2004 à 20:14:38  profilanswer
 

nraynaud a écrit :

non, c'est bien pour ça que je te demande des copies d'écran.


 
Ben je sais pas comment inserer une image ........

n°725163
nraynaud
lol
Posté le 13-05-2004 à 20:22:37  profilanswer
 

tag [img]
par contre, il faut que tu la mettes quelquepart sur le net.
on a tous des répertoires à bordel sur nos sites persos.


---------------
trainoo.com, c'est fini
n°725180
amauryxiv
Posté le 13-05-2004 à 20:38:13  profilanswer
 

nraynaud a écrit :

tag [img]
par contre, il faut que tu la mettes quelquepart sur le net.
on a tous des répertoires à bordel sur nos sites persos.


 
Bon ben ca va pas etre possible.
 
En tout cas chez moi ce petit programme merde. Quand je bouge la boite de dialogue, ca laisse des traces rouges partout et quand je la ferme, elle ne disparait pas completement.....

n°725185
nraynaud
lol
Posté le 13-05-2004 à 20:46:22  profilanswer
 

bah mets un bout de code pour effacer ton ancienne ligne avant de tracer la nouvelle.


---------------
trainoo.com, c'est fini

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

  Swing et le refraichissement.

 

Sujets relatifs
[XML - MathML - Java] Interpréter du MathML dans du Java (SWING)[java] swing : comment réaliser un arbre binaire
[swing] creer un JButton ou JLabel qui renvoie une page au browser[swing] pb de layout :/
[JAVA] [SWING] Affichage affreux de couleurs et de composants[swing] verifier si un textField est vide, pourquoi sa marche pas ?
pb de eventHandling avec swing, comment faire dans ce cas ?[Swing][jpanel]Afficher une image dans un jpanel
[Swing][jtree]Problemes d'icones....[swing][jtree]Inserer des icon+curseur personaliser+changement couleur
Plus de sujets relatifs à : Swing et le refraichissement.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR