import javax.swing.*; import java.awt.event.*; public class AutomatiqueActionListener implements ActionListener { private JFrame choixFrame; public AutomatiqueActionListener(JFrame choixFrame) { this.choixFrame = choixFrame; } @Override public void actionPerformed(ActionEvent e) { choixFrame.dispose(); int[][] grille = GenerateurSudoku.genererGrille(); System.out.println("Grille Sudoku générée avec succès."); long startTime = System.nanoTime(); if (Resolveur.resoudreSudoku(grille)) { long endTime = System.nanoTime(); long duration = (endTime - startTime) / 1000000; FenetrePrincipale fenetrePrincipale = new FenetrePrincipale(); fenetrePrincipale.afficher(true, grille); JOptionPane.showMessageDialog(null, "Grille résolue avec succès en " + duration + " millisecondes !"); } else { JOptionPane.showMessageDialog(null, "Impossible de résoudre la grille."); } } }