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); } }