Bonjour,

On est 3 débutants à travailler sur un projet Java de version très simplifiée du jeu "Lazors" (disponible sur Android/iPhone).

Pour le moment on vient de coder une fenêtre d'un niveau du jeu et une autre fenêtre qui s'affiche au lancement du programme.

Le problème est qu'on ne sait pas comment faire le lien entre les 2. La première est composée de 2 boutons et l'idée ce serait d'ouvrir la 2ème en cliquant sur l'un des boutons...

Voici le code de la fenêtre principale :
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
public class Fenetre extends JFrame implements ActionListener {
 
    private JButton buttonVG = new JButton("V");
    private JButton buttonVD = new JButton("V");
    private JButton buttonVH = new JButton("V");
    private JButton buttonVB = new JButton("V");
 
    private JButton buttonJG = new JButton("J");
    private JButton buttonJD = new JButton("J");
    private JButton buttonJH = new JButton("J");
    private JButton buttonJB = new JButton("J");
 
    private JButton buttonBG = new JButton("B");
    private JButton buttonBD = new JButton("B");
    private JButton buttonBH = new JButton("B");
    private JButton buttonBB = new JButton("B");
 
    private JPanel panel = new JPanel();
    private JPanel panelsud = new JPanel();
    private JPanel panelest = new JPanel();
    private JPanel panelouest = new JPanel();
    private JPanel panelcentre = new JPanel();
 
    private Cubes cubes = new Cubes();
 
    public void actionPerformed(ActionEvent e) {
 
        if(e.getSource() == buttonVD) {
            cubes.droiteV();
        }else {
 
        }
 
        if(e.getSource() == buttonVG) {
            cubes.gaucheV();
        } else {
 
        }
 
        if(e.getSource() == buttonVH) {
            cubes.hautV();
        }else {
 
        }
 
        if(e.getSource() == buttonVB) {
            cubes.basV();
        }else {
 
        }
 
        if(e.getSource() == buttonJD) {
            cubes.droiteJ();
        }else {
 
        }
 
        if(e.getSource() == buttonJG) {
            cubes.gaucheJ();
        }else {
 
        }
 
        if(e.getSource() == buttonJH) {
            cubes.hautJ();
        }else {
 
        }
 
        if(e.getSource() == buttonJB) {
            cubes.basJ();
        }else {
 
        }
 
        if(e.getSource() == buttonBD) {
            cubes.droiteB();
        }else {
 
        }
 
        if(e.getSource() == buttonBG) {
            cubes.gaucheB();
        }else {
 
        }
 
        if(e.getSource() == buttonBH) {
            cubes.hautB();
        }else {
 
        }
 
        if(e.getSource() == buttonBB) {
            cubes.basB();
        }else {
 
        }    
    }
 
    public Fenetre() {
 
        this.setVisible(true);
        this.setTitle("Lazors");
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
        panel.setLayout(new BorderLayout());
 
        panelsud.setLayout(new BorderLayout());
 
        panelest.setLayout(new BorderLayout());
        panelouest.setLayout(new BorderLayout());
        panelcentre.setLayout(new BorderLayout());
 
 
        panel.add(panelsud, BorderLayout.SOUTH);
 
        panelsud.add(panelest, BorderLayout.EAST);
        panelsud.add(panelouest, BorderLayout.WEST);
        panelsud.add(panelcentre, BorderLayout.CENTER);
 
        panelouest.add(buttonVG, BorderLayout.WEST);
        panelouest.add(buttonVD, BorderLayout.EAST);
        panelouest.add(buttonVH, BorderLayout.NORTH);
        panelouest.add(buttonVB, BorderLayout.SOUTH);
 
        panelcentre.add(buttonJG, BorderLayout.WEST);
        panelcentre.add(buttonJD, BorderLayout.EAST);
        panelcentre.add(buttonJH, BorderLayout.NORTH);
        panelcentre.add(buttonJB, BorderLayout.SOUTH);
 
        panelest.add(buttonBG, BorderLayout.WEST);
        panelest.add(buttonBD, BorderLayout.EAST);
        panelest.add(buttonBH, BorderLayout.NORTH);
        panelest.add(buttonBB, BorderLayout.SOUTH);
 
        panel.setBackground(Color.gray);
        panel.setSize(300,300);
 
 
        buttonVG.addActionListener(this);
        buttonVD.addActionListener(this);
        buttonVH.addActionListener(this);
        buttonVB.addActionListener(this);
 
        buttonJG.addActionListener(this);
        buttonJD.addActionListener(this);
        buttonJH.addActionListener(this);
        buttonJB.addActionListener(this);
 
 
        buttonBG.addActionListener(this);
        buttonBD.addActionListener(this);
        buttonBH.addActionListener(this);
        buttonBB.addActionListener(this);
 
 
        Thread thread = new Thread(cubes);
 
        thread.start();
 
        panel.add(cubes);
 
        panel.updateUI();    
 
 
        this.setContentPane(panel);
        this.setSize(315, 415);
        this.setLocationRelativeTo(null);
    }
 
    public static void main(String[] args) {
        Fenetre Fenetre = new Fenetre();
    }
}
et ici le code de la fenêtre de lancement :
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
public class Fenetre extends JFrame{
 
    public Fenetre(){
        //On instancie notre premier bouton  
        JButton Bouton1 = new JButton("Jouer niveau1");
        //On instancie notre second bouton
        JButton Bouton2 = new JButton("Jouer niveau2");
        //Définit un titre pour notre fenêtre
        this.setTitle("Menu");
        //Définit sa taille
        this.setSize(300, 300);
        //Termine le processus lorsqu'on clique sur la croix rouge
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //On affiche la fenêtre au milieu de l'écran
        this.setLocationRelativeTo(null);
        //on instancie le nouveau Panel
        JPanel pan = new JPanel();
        //Définition de sa couleur de fond
        pan.setBackground(Color.BLACK);
        //On définit le layout à utiliser sur le content pane
        this.setContentPane(pan);
        this.setLayout(new BorderLayout());
 
        //A l'Est
        this.getContentPane().add(Bouton1, BorderLayout.EAST);
        //A l'Ouest
        this.getContentPane().add(Bouton2, BorderLayout.WEST);
 
        //On rend la fenêtre visible
        this.setVisible(true);
        //On associe un écouteur au premier Bouton
        Bouton1.addActionListener(new Action());
        //On associe un écouteur au second bouton
        Bouton2.addActionListener(new Action2());
    }      
 
    public class Action implements ActionListener {
        //On implémente l'interface ActionListener
 
        ////Méthode qui sera appelée lors d'un clic sur le bouton
        public void actionPerformed (ActionEvent e){
 
            JFrame frame2 = new JFrame("niveau 1");
            frame2.setVisible(true);
            frame2.setSize(412,430);
            frame2.setLocationRelativeTo(null);
            //On instancie notre ImageIcon
            ImageIcon imagen = new ImageIcon(getClass().getResource("FullSizeRender.jpg"));
            //On instancie notre JLabel dans lequel on instancie l'image que l'on veut faire apparaître en cliquant sur le bouton 1 et qui correspond à l'image
            //du niveau 1.
            JLabel label0 = new JLabel(imagen);
            //On instancie notre JPanel
            JPanel panel0 = new JPanel();
            panel0.setBackground(Color.WHITE);
            //On ajoute le label au panel
            panel0.add(label0);
            //On ajoute le panel au frame
            frame2.add(panel0);
        }
    }
 
    public class Action2 implements ActionListener {
 
        public void actionPerformed (ActionEvent e){
 
            //Ici j'ai créé une simple fenêtre temporaire en attendant que le niveau 2 soit terminé par mes camarades
            JFrame frame3 = new JFrame("niveau 2");
            frame3.setVisible(true);
            frame3.setSize(530,430);
            frame3.setLocationRelativeTo(null);
            JLabel label1 = new JLabel("Voici le niveau 2!");
            JPanel panel1 = new JPanel();
            panel1.add(label1);
            frame3.add(panel1);
        }
    }
}
J’espère que j'ai été clair dans ma question...

Quelqu'un saurait-il m'indiquer comment faire ?

Merci d'avance pour votre aide.