Files
SAE21_2025/ActionReprendre.java
T

45 lines
1.3 KiB
Java
Raw Normal View History

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileInputStream;
import java.io.ObjectInputStream;
import java.io.IOException;
2026-04-11 21:18:10 +02:00
/**
* Action déclenchée depuis le menu pour recharger une partie sauvegardée.
* Utilise la désérialisation pour récupérer l'objet Grille depuis un fichier.
*/
public class ActionReprendre implements ActionListener {
private Menu menu;
2026-04-11 21:18:10 +02:00
/**
* Constructeur de l'action reprendre.
* @param m Le menu principal à fermer après le chargement.
*/
public ActionReprendre(Menu m) {
this.menu = m;
}
2026-04-11 21:18:10 +02:00
/**
* Lit le fichier de sauvegarde et relance la fenêtre de jeu.
* @param e L'événement du clic.
*/
@Override
public void actionPerformed(ActionEvent e) {
try {
FileInputStream fichier = new FileInputStream("sauvegarde.ser");
ObjectInputStream flux = new ObjectInputStream(fichier);
Grille g = (Grille) flux.readObject();
flux.close();
fichier.close();
new FenetreJeu(g);
menu.getFenetre().dispose();
} catch (IOException | ClassNotFoundException ex) {
System.err.println("Erreur lors du chargement : " + ex.getMessage());
}
}
}