Bonjour !

Voila je suis en train de développer mon logiciel mais étant amateur, il me manque quelques notions que je n'arrive pas à trouver.


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
 
// 1ere class : Fenêtre du logiciel avec un conteneur général qui servira de support autres conteneurs
public class 1 extends javax.swing.JFrame {
private javax.swing.JPanel contPrincipal;
 
public 1 () {
  initComponents();
  add(contPrincipal);
  2 Panel2 = new 2();
  contPrincipal.add(Panel2);
 
  }
}
 
// 2eme class : Jpanel contenant un tableau avec BDD... et un bouton pour ajout de nouveau client
public class 2 extends javax.swing.JPanel{
private javax.swing.JBtutton nouveauClient;
 
public 2 () {
  initComponents();
  add(nouveauClient);
  }
private void nouveauClient_jBtnActionPerformed(java.awt.event.ActionEvent evt) {
  // je ne suis déjà pas très sur de cette manip mais cela fonctionne                                                  
  1 logiciel = new 1();
  4 nClient = 4(logiciel, true);
  nClient.setVisible(true);
  } 
}
 
 
// 3eme class : jPanel contenant des informations sur le client
public class 3 extends javax.swing.JPanel{
public 3 () {
  initComponents();
  }
}
 
 
// 4eme class : dont le but est de rentrer les nouvelles données clients
public class 4 extends javax.swing.JDialog {
private javax.swing.JBtutton valider;
public 4 (java.awt.Frame parent, boolean modal){
  super(parent, modal);
  initComponents();
  }
}
En gros, je souhaiterais que lorsque j'appuie sur mon bouton valider de ma fenêtre de dialogue, mon panel contPrincipal retire le panel de ma class 2 et ajoute celui de la class 3.
Sauf que je n'ai aucune idée de comment coder mon ActionPerformed pour que cela fonctionne.

J'avais essayé ca mais ca ne fonctionne pas (j'avais passé mon contPrincipal en public) :

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
 
public class 4 extends javax.swing.JDialog {
private javax.swing.JBtutton valider;
 
public 4 (java.awt.Frame parent, boolean modal){
  super(parent, modal);
  initComponents();
  }
 
private void valider_jBtnActionPerformed(java.awt.event.ActionEvent evt) {                                             
  1 logiciel = new 1();  // forcement ici il prend en compte une nouvelle fenêtre autre que celle déjà existante
  3 panel3 = new 3();
  1.contPrincipal_jPnl.removeAll();
  1.contPrincipal_jPnl.add(panel3);
  1.contPrincipal_jPnl.validate();
  1.contPrincipal_jPnl.repaint();
  dispose();        
  }

J'espère ne pas demander l'impossible, sinon je vais devoir tout revoir ^^.
Merci de votre aide !