Files
SAE21_2025/NouvellePartie.java
T

54 lines
1.7 KiB
Java

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import java.awt.*;
/**
* Action déclenchée pour paramétrer une nouvelle partie.
* Ouvre une fenêtre demandant au joueur le nombre de lignes, de colonnes et de mines.
*/
public class NouvellePartie implements ActionListener {
private Menu menu;
/**
* Constructeur de l'action.
* @param m Le menu principal pour pouvoir le fermer par la suite.
*/
public NouvellePartie(Menu m) {
this.menu = m;
}
/**
* Crée et affiche la fenêtre de configuration.
* @param e L'événement du clic.
*/
public void actionPerformed(ActionEvent e) {
JFrame fenetreConfig = new JFrame();
fenetreConfig.setSize(300, 250);
fenetreConfig.setLocation(100, 100);
fenetreConfig.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
GridLayout g = new GridLayout(4, 2);
fenetreConfig.setLayout(g);
JTextField champLignes = new JTextField("10");
JTextField champColonnes = new JTextField("10");
JTextField champMines = new JTextField("10");
JButton demarrer = new JButton("Démarrer");
fenetreConfig.add(new JLabel("Ligne"));
fenetreConfig.add(champLignes);
fenetreConfig.add(new JLabel("Colonne"));
fenetreConfig.add(champColonnes);
fenetreConfig.add(new JLabel("Nb Mine"));
fenetreConfig.add(champMines);
fenetreConfig.add(new JLabel(" "));
fenetreConfig.add(demarrer);
demarrer.addActionListener(new ActionDemarrer(champLignes, champColonnes, champMines, fenetreConfig, menu));
fenetreConfig.setVisible(true);
}
}