import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JOptionPane; public class ControleurMenu implements ActionListener { private MenuPrincipal menu; public ControleurMenu(MenuPrincipal m) { this.menu = m; } @Override public void actionPerformed(ActionEvent evenement) { if (evenement.getSource() == this.menu.getBtnNouvellePartie()) { try { String strL = JOptionPane.showInputDialog(menu, "Nombre de lignes (entre 4 et 30) :"); if (strL == null) return; int l = Integer.parseInt(strL); String strC = JOptionPane.showInputDialog(menu, "Nombre de colonnes (entre 4 et 30) :"); if (strC == null) return; int c = Integer.parseInt(strC); String strM = JOptionPane.showInputDialog(menu, "Nombre total de mines :"); if (strM == null) return; int m = Integer.parseInt(strM); if (l < 4 || l > 30 || c < 4 || c > 30 || m >= (l * c)) { JOptionPane.showMessageDialog(menu, "Valeurs incorrectes ! Les dimensions doivent ĂȘtre entre 4 et 30, et les mines infĂ©rieures au nombre de cases."); return; } Grille nouvelleGrille = new Grille(l, c, m); FenetreJeu fenetre = new FenetreJeu(nouvelleGrille); fenetre.setVisible(true); this.menu.dispose(); } catch (NumberFormatException ex) { JOptionPane.showMessageDialog(menu, "Erreur : Vous devez entrer des nombres entiers !"); } } else if (evenement.getSource() == this.menu.getBtnReprendre()) { System.out.println("Chargement de la sauvegarde..."); } else if (evenement.getSource() == this.menu.getBtnQuitter()) { System.exit(0); } } }