Bonjour,

Après beaucoup d'essai de bidouillage, je m'en remet à votre savoir

En résumé,

j'ai un JComboBox qui contient la liste des établissements (liste situé dans ma base de données)

j'ai une JTable qui doit me donner des informations concernant l'établissement.

j'ai un bouton qui me permet de créer un nouvel établissement

1) lorsque je clique sur l'onglet "établissement", ma JComboBox est par défaut sur le 1er établissement, et donc ma JTable doit afficher les renseignements le concernant.

2) quand je sélectionne un autre établissement, ma JTable doit m'afficher les renseignements le concernant

Problème: j'arrive bien à mettre mon établissement par défaut avec les bon renseignement mais je n'arrive pas à changer d'établissement
J'ai donc changer mon code mais là rien ne marche


3) quand je clique sur le bouton création un formulaire apparait (ça c'est ok), cale enregistre mes données dans ma base de données (OK) mais quand je ferme ce formulaire et donc que je retourne sur mon onglet établissement, ma liste n'est pas mise à jour

Voici mon code:

classe etablissement:
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
public class Etablissement extends JPanel implements ItemListener,ActionListener{
 
    DefaultComboBoxModel listeModel= new DefaultComboBoxModel();
    JComboBox liste;
    JTable table=new JTable();
    TableModel tableur;
     JButton btC=new JButton("Création");
 
//nom du client afin de le récupérer pour la création d'un établissement (n'apparait pas)
    JTextField tfClient;
Etablissement(String client)
{
  super();
  build(client);
}
 
private void build(String client)
{
        tfClient= new JTextField(client);
 
      try {
        BaseDonnees BD=new BaseDonnees();
        ResultSet rst=BD.Ets(client);
        while(rst.next())
           {
            listeModel.addElement(rst.getString("denominationEts"));
            }
     }catch(Exception se) {
            System.out.println("erreur commise est: "+se);
        }
     liste = new JComboBox(listeModel);
     //JCompletionBox.enableAutoCompletion(liste);
     liste.setSelectedIndex(0);
     liste.setMaximumRowCount(5);
     liste.setBounds (550, 120,300,300);
     liste.setBackground(Color.WHITE);
 
 
//Ecouteur sur la liste et les boutons
  if(liste.getSelectedItem()==client)
  {
      try{
              BaseDonnees BD=new BaseDonnees();
              String nomClt=tfClient.getText();
              ResultSet rst=BD.lireEts1(nomClt);
              while(rst.next())
              {
               String s=rst.getString("denominationEts");
               table=contenu(s);
               table.updateUI();
               revalidate();
               addFormat(gbc,table, fixStyle, 1, 0);
 
      }
        } catch(Exception se) {
            System.out.println("erreur commise est: "+se);
        }
  }
  else
  {
     liste.addItemListener(this);
  }
 
     btC.addActionListener(this);
     setLayout(new GridBagLayout());
    // Répartition
        addFormat(gbc,liste, fixStyle, 0, 0);
        addFormat(gbc,btC, fixStyle, 2, 1);
 
      }
 
//Affiche information de l'établissement quand clique dessus
 
public void itemStateChanged(ItemEvent e) {
       if(e.getStateChange() == ItemEvent.SELECTED)
       {
                             String s=e.getItem().toString();
                             table=contenu(s);
                             table.updateUI();
                             revalidate();
                             addFormat(gbc,table, fixStyle, 1, 0);
       }
}
 
//Création d'un nouvel établissement
 
public void actionPerformed(ActionEvent evt){
      Object obj=evt.getSource();
 
    if (obj==btC)
      {
        String nomClt=tfClient.getText();
       CreaEts nouvEts=new CreaEts(nomClt);
      }
 
}
 
//Methode contenu: renvoie une JTable avec info de l'établissement
 
private JTable contenu(String ets)
    {
      String denoEts="";
      String siret="";
 
     try{
 
              BaseDonnees BD=new BaseDonnees();
              ResultSet rst=BD.lireEts(ets);
              while(rst.next())
      {
 
      denoEts=rst.getString("denominationEts");
      siret=rst.getString("siret");
 
      }
        } catch(Exception se) {
            System.out.println("erreur commise est: "+se);
        }
    String[] titreColonnes = { "", ""};
 
   Object[][] données = { { "Dénomination", denoEts },
                                   { "Siret",siret} };
    table=new JTable(données,titreColonnes);
    table.setPreferredSize(new Dimension(700, 300));
    tableur=table.getModel();
    return table;
      }
J'espère que j'ai bien expliqué mon problème
merci de votre aide
claire