Problème de rafraîchissement d'une applet

cs_zohan Messages postés 8 Date d'inscription mardi 3 février 2009 Statut Membre Dernière intervention 6 mars 2012 - 2 mars 2012 à 23:23
cs_zohan Messages postés 8 Date d'inscription mardi 3 février 2009 Statut Membre Dernière intervention 6 mars 2012 - 6 mars 2012 à 09:20
Salut à tous.

j'ai développé une applet swing qui affiche des graphes. le problème c'est que le rafraîchissement ne se fait qu'après plusieurs tentatives de rafraîchissement.

je veux qu'il se fait de la première fois. mais je ne sais pas comment.

je suis en locale.

6 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
3 mars 2012 à 08:34
Bonjour,

Difficile de t'aider avec si peu d’éléments.

Peux tu nous montrer ton code (juste les lignes qui te permettent de rafraîchir ta fenêtre)
0
cs_zohan Messages postés 8 Date d'inscription mardi 3 février 2009 Statut Membre Dernière intervention 6 mars 2012
3 mars 2012 à 09:25
Bonjour,

voici le code, merci pour votre aide :


private GrapheVis Graphe = null;
JSObject win;

public GrapheApplet()
{
super();
}

public void init()
{
win = JSObject.getWindow(this);
getContentPane().setLayout(new BorderLayout());
setSize(500, 500);
/* Graphe = new GrapheVis(this, win);
getContentPane().add(Graphe, "Center");*/
}

public void setLocale(String Noeud)
{
Graphe.setLocale(Noeud, 2);
}

public void paint(Graphics g){
super.paint(g);

if(Graphe != null){
getContentPane().remove(Graphe);
Graphe = null;
}
Graphe = new GrapheVis(this, win);
getContentPane().add(Graphe, "Center");
}
public void repaint(Graphics g){
super.repaint();
if(Graphe != null){
getContentPane().remove(Graphe);
Graphe = null;
}
Graphe = new GrapheVis(this, win);
getContentPane().add(Graphe, "Center");
}
public void update(Graphics g){
paint(g);
}
}
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
3 mars 2012 à 11:07
Bonjour,

Tu ne dois jamais redéfinir la méthode repaint.

Tu utilises très mal la méthode paintComponent, normalement, elle ne doit pas modifier le contenu de ton panel.

JE t'explique ce qui se passe : repaint est appelée, cette méthode appelle paintComponent, paintComponent modifie l'objet courant. Et a chaque modif de l'objet courant, repaint est appelée.

Donc, ton programme boucle indéfiniment et tu as des problèmes d'affichages.

Ta méthode update est inutile.
0
cs_zohan Messages postés 8 Date d'inscription mardi 3 février 2009 Statut Membre Dernière intervention 6 mars 2012
6 mars 2012 à 00:37
Salut, merci pour votre aide.

s'il vous plaît vous pouvez me proposer une solution pour aplanir cette merde.
j'ai compris qu'il ne faut pas redéfinir la méthode repaint();

à chaque nouvelle requête c'est l'objet graphe qui se change j'ai essayé toutes les possibilités ( selon mes connaissances) mais je ne suis jamais arrivé.

merci pour votre aide une autrefois. je suis reconnaissant.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
6 mars 2012 à 08:29
Je veux bien mais c'est assez difiicile de savoir ce que tu veux faire exactement. Que veux tu réaliser ?
0
cs_zohan Messages postés 8 Date d'inscription mardi 3 février 2009 Statut Membre Dernière intervention 6 mars 2012
6 mars 2012 à 09:20
Bonjour,
je cherche à rafraichir mon applet à l'arrivé de chaque nouvelle requête.

le traitement derrière se fait correctement. les nouvelles données sont chargées à partir de la base.
le rafraichissement de la page se fait sauf que l'applet elle est toujours la même.
je cherche à la rendre dynamique.
elle se rafraichie à chaque nouvelle requête c'est à dire qu'elle affiche les nouvelles données et non pas ceux chargées à la première requête.

j’espère que tu me comprend.
0
Rejoignez-nous