Bonjour à tous!!
Voici mon petit problème: j'ai défini l'affichage graphique d'un JPanel, via une méthode nommée simuGraph, comme suit:
Lorsque j'appelle cette méthode dans le main de ma classe JFrame, aucun souci, la simulation apparait dans la JFrame.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public void simuGraph(){ this.nbCycle=34; Ocean indien = new Ocean(32,80); laGrille = new Grille(indien, boeing); getContentPane().add(laGrille); setVisible(true); for (int tps=0; (tps<this.getNbcycle() && this.getSimu().getNbpanic()!=0);tps++){ this.getSimu().uncycle(); for (int i=0;i<100000000; i++){} this.laGrille.repaint(); } }
Maintenant, afin de pouvoir rentrer les paramètres (nombre de passagers, nombre de cycles), j'ai créé un menu qui demande successivement ces données, puis à l'issu j'appelle ma méthode d'initialisation, puis de simulation graphique, et là, surprise, la simulation n'apparait plus!!!
Quelqu'un aurait-il une idée du problème que doit générer mon actionlistener??
Voici le code:
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
34
35 private JMenuItem getNewSimulation() { if (newSimulation == null) { newSimulation = new JMenuItem(); newSimulation.setActionCommand("Nouvelle simulation"); newSimulation.setText("Nouvelle simulation"); newSimulation.setEnabled(true); newSimulation.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { System.out.println(e); if (e.getActionCommand().equals("Nouvelle simulation")){ String reponse1 = JOptionPane.showInputDialog("Veuillez entrer le nombre de passagers désirés","5 min et 53 max"); while((testEntier(reponse1))==false){ if (reponse1==null){ break ; } else{ reponse1=JOptionPane.showInputDialog("Veuillez entrer le nombre de passagers désirés","5 min et 53 max"); } } String reponse2 = JOptionPane.showInputDialog("Veuillez entrer le nombre de cycles désirés","500 max"); while((testEntier(reponse2))==false){ if (reponse2==null){ break ; } else{ reponse2 = JOptionPane.showInputDialog("Veuillez entrer le nombre de cycles désirés","500 max"); } } initSimu(); simuGraph();
Partager