SAE21_2021/FrameMenu.java

57 lines
1.9 KiB
Java
Raw Normal View History

2022-04-25 17:10:55 +02:00
import javax.swing.*;
import java.awt.*;
// Cette classe à pour but d'afficher un menu et de réagir aux directives de l'utilisateur (lancer le jeu, le quitter...)
public class FrameMenu{
2022-05-20 13:39:53 +02:00
private int lignes;
private int colonnes;
private int mines;
2022-04-25 17:10:55 +02:00
public FrameMenu() {
// On récupère les dimensions de l'écran pour adapter la taille de notre fenêtre
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
// On crée ensuite notre fenêtre
2022-04-26 12:15:13 +02:00
JFrame fenetre = new JFrame("Démineur - Menu");
2022-05-19 08:12:15 +02:00
fenetre.setSize(screenSize.width * 3/5,screenSize.height * 2/3);
fenetre.setLocation(screenSize.width * 1/5, screenSize.height * 1/6);
2022-04-25 17:10:55 +02:00
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
2022-05-19 08:12:15 +02:00
fenetre.setLayout(null);
fenetre.setLayout(new GridBagLayout());
GridBagConstraints miseEnPage = new GridBagConstraints();
2022-05-18 14:42:02 +02:00
2022-05-19 08:12:15 +02:00
// On créer les zones de textes de saisie
2022-05-20 13:39:53 +02:00
JSlider sliderLignes = new JSlider(4,30);
JSlider sliderColonnes = new JSlider(4,30);
JSlider sliderMines = new JSlider(16,900);
2022-05-19 08:12:15 +02:00
miseEnPage.gridx = 0;
miseEnPage.gridy = 0;
2022-05-20 13:39:53 +02:00
miseEnPage.weightx =0;
miseEnPage.weighty = 0.3;
miseEnPage.fill = GridBagConstraints.BOTH;
fenetre.add(sliderLignes);
2022-05-19 08:12:15 +02:00
miseEnPage.gridx = 0;
miseEnPage.gridy = 1;
2022-05-20 13:39:53 +02:00
miseEnPage.weightx =0;
miseEnPage.weighty = 0.3;
2022-05-19 08:12:15 +02:00
miseEnPage.fill = GridBagConstraints.BOTH;
2022-05-20 13:39:53 +02:00
fenetre.add(sliderColonnes);
2022-05-19 08:12:15 +02:00
miseEnPage.gridx = 0;
miseEnPage.gridy = 2;
2022-05-20 13:39:53 +02:00
miseEnPage.weightx =0;
miseEnPage.weighty = 0.3;
2022-05-19 08:12:15 +02:00
miseEnPage.fill = GridBagConstraints.BOTH;
2022-05-20 13:39:53 +02:00
fenetre.add(sliderMines);
2022-05-19 08:12:15 +02:00
2022-05-20 13:39:53 +02:00
this.lignes=sliderLignes.getValue();
this.colonnes=sliderColonnes.getValue();
this.mines=sliderMines.getValue();
System.out.println("Lignes : "+this.lignes+" Colonnes : "+this.colonnes+" Mines : "+this.mines);
2022-05-19 08:12:15 +02:00
// A faire : choix de la taille de la grille, bouton jouer, charger et quitter
2022-04-25 17:10:55 +02:00
fenetre.setVisible(true);
}
}