Bonjour, j'ai des informations qui devraient s'afficher dans un JPanel, lui même dans une JFrame, via la méthode drawString...

Le problème est le suivant: au debugger, tout se passe bien, les différentes infos sont prises en compte, mais pas d'affichage!!

Pour avoir des infos en temps reel, j'ai utilisé un Thread;

voici les éléments de code:

méthodes paintComponent et run de la JFrame:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
// Methode Run
 public void run(){
  this.repaint();
 }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
//Methode paintComponent
 public void paintComponent(Graphics g){
  super.paintComponent(g);
  Graphics2D g2D=(Graphics2D)g;
 
  if (this.getSimulation()!=null){
  // Affiche le nombre de passagers restants dans l'avion
  int nbPassagersRestants = this.getSimulation().getNbpanic();
  String passagersRestants = "Il reste "+nbPassagersRestants+" passagers dans l'avion";
  g2D.drawString(passagersRestants, 10,10);
 
//   Affiche le nombre de passagers evacues
  if (this.getSimulation().getNbdehors()!=0){
  int nbPassagersEvacues = this.getSimulation().getNbdehors();
  String passagersEvacues = "Déjà "+nbPassagersEvacues+" passagers ont été évacués";
  g2D.drawString(passagersEvacues, 20,10);}
  else{
   String passagersEvacues = "Aucun passager évacué";
   g2D.drawString(passagersEvacues, 20,10);
  }
 
//   Affiche le nombre de passagers morts
  if (this.getSimulation().getNbdead()!=0){
  int nbPassagersMorts = this.getSimulation().getNbdead();
  String passagersMorts = "Malheureusement, "+nbPassagersMorts+" passagers sont décédés durant l'évacuation";
  g2D.drawString(passagersMorts, 30,10);}
  else{
   String passagersMorts = "Aucun décés signalé";
   g2D.drawString(passagersMorts, 30,10);
  }
 }}
}
et la méthode utilisé pour l'execution:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
public void simulationGraphique(String a){
 
  int nbCycle=Integer.parseInt(a);
  Ocean indien = new Ocean(32,80);
  laGrille = new Grille(indien, this.avion);
  donneesDirect = new SuiviDonnees(this.getSimulation());
  donneesDirect.start();
  laGrille.start(this.simulation, nbCycle);
  this.jContentPane.add(laGrille);
  this.jContentPane.add(donneesDirect);
  this.setVisible(true);
 }
Merci d'avance à ceux et celles qui ont une idée pour arranger ce problème!!