mise à jour dépendance et nom des programmes
This commit is contained in:
15
Concepteur.java
Normal file
15
Concepteur.java
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import javax.swing.*;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
// affichage et création de la fenetre
|
||||||
|
|
||||||
|
SudokuGridConcepteur sudokuGrid = new SudokuGridConcepteur();
|
||||||
|
sudokuGrid.setSize(700,600);
|
||||||
|
sudokuGrid.setLocation(100, 100);
|
||||||
|
sudokuGrid.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
sudokuGrid.setVisible(true);
|
||||||
|
}
|
||||||
|
}
|
15
Joueur.java
Normal file
15
Joueur.java
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
import javax.swing.*;
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
// affichage et création de la fenetre
|
||||||
|
|
||||||
|
SudokuGridJoueur sudokuGrid = new SudokuGridJoueur();
|
||||||
|
sudokuGrid.setSize(700,600);
|
||||||
|
sudokuGrid.setLocation(100, 100);
|
||||||
|
sudokuGrid.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
sudokuGrid.setVisible(true);
|
||||||
|
}
|
||||||
|
}
|
24
Makefile
24
Makefile
@@ -7,11 +7,17 @@ J = java
|
|||||||
|
|
||||||
### REGLES ESSENTIELLES ###
|
### REGLES ESSENTIELLES ###
|
||||||
|
|
||||||
Main.class : Main.java SudokuGrid.class
|
Concepteur.class : Concepteur.java SudokuGridConcepteur.class
|
||||||
${JC} ${JCFLAGS} Main.java
|
${JC} ${JCFLAGS} Concepteur.java
|
||||||
|
|
||||||
SudokuGrid.class : SudokuGrid.java TextFilter.class SaveButton.class LoadButton.class VerifButton.class
|
Joueur.class : Joueur.java SudokuGridJoueur.class
|
||||||
${JC} ${JCFLAGS} SudokuGrid.java
|
${JC} ${JCFLAGS} Joueur.java
|
||||||
|
|
||||||
|
SudokuGridConcepteur.class : SudokuGridConcepteur.java TextFilter.class SaveButton.class LoadButton.class VerifButton.class
|
||||||
|
${JC} ${JCFLAGS} SudokuGridConcepteur.java
|
||||||
|
|
||||||
|
SudokuGridJoueur.class : SudokuGridJoueur.java TextFilter.class LoadButton.class SaveButton.class
|
||||||
|
${JC} ${JCFLAGS} SudokuGridJoueru.java
|
||||||
|
|
||||||
TextFilter.class : TextFilter.java
|
TextFilter.class : TextFilter.java
|
||||||
${JC} ${JCFLAGS} TextFilter.java
|
${JC} ${JCFLAGS} TextFilter.java
|
||||||
@@ -22,14 +28,14 @@ SaveButton.class : SaveButton.java
|
|||||||
LoadButton.class : LoadButton.java
|
LoadButton.class : LoadButton.java
|
||||||
${JC} ${JCFLAGS} LoadButton.java
|
${JC} ${JCFLAGS} LoadButton.java
|
||||||
|
|
||||||
VerifButton.class : VerifButton.java
|
|
||||||
${JC} ${JCFLAGS} VerifButton.java
|
|
||||||
|
|
||||||
|
|
||||||
### REGLES OPTIONNELLES ###
|
### REGLES OPTIONNELLES ###
|
||||||
|
|
||||||
run : Main.class
|
Concepteur : Concepteur.class
|
||||||
${J} Main
|
${J} Concepteur
|
||||||
|
|
||||||
|
Joueur : Joueur.class
|
||||||
|
${J} Joueur
|
||||||
|
|
||||||
clean :
|
clean :
|
||||||
-rm -f *.class *.java~ *~
|
-rm -f *.class *.java~ *~
|
||||||
|
83
SudokuGridConcepteur.java
Normal file
83
SudokuGridConcepteur.java
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
|
|
||||||
|
public class SudokuGrid extends JFrame {
|
||||||
|
private static final int GRID_SIZE = 9; // Taille de la grille Sudoku 9x9
|
||||||
|
private static final int REGION_SIZE = 3;
|
||||||
|
public static final boolean BOOL = true;
|
||||||
|
private JTextField[][] grid;
|
||||||
|
|
||||||
|
public SudokuGrid() {
|
||||||
|
// Panneau pour la grille Sudoku.
|
||||||
|
JPanel gridPanel = new JPanel();
|
||||||
|
gridPanel.setLayout(new GridLayout(GRID_SIZE, GRID_SIZE)); // Utiliser GridLayout
|
||||||
|
gridPanel.setBackground(new Color(88, 169, 191)); // Fond vert
|
||||||
|
|
||||||
|
// Initialiser la grille
|
||||||
|
grid = new JTextField[GRID_SIZE][GRID_SIZE];
|
||||||
|
for (int i = 0; i < GRID_SIZE; i++) {
|
||||||
|
for (int j = 0; j < GRID_SIZE; j++) {
|
||||||
|
grid[i][j] = new JTextField();
|
||||||
|
|
||||||
|
TextFilter filtre = new TextFilter(grid[i][j], GRID_SIZE, grid, i, j);
|
||||||
|
|
||||||
|
grid[i][j].addKeyListener(filtre);
|
||||||
|
grid[i][j].setHorizontalAlignment(JTextField.CENTER);
|
||||||
|
grid[i][j].setFont(new Font("Verdana", Font.BOLD,40));
|
||||||
|
gridPanel.add(grid[i][j]);
|
||||||
|
|
||||||
|
int top = 1;
|
||||||
|
int left = 1;
|
||||||
|
int bottom = 1;
|
||||||
|
int right = 1;
|
||||||
|
|
||||||
|
// Vérifier si la case est sur le bord de la région horizontalement
|
||||||
|
if ((j + 1) % REGION_SIZE == 0 && j != GRID_SIZE - 1) {
|
||||||
|
right = 5; // Ajouter une bordure plus épaisse à droite
|
||||||
|
}
|
||||||
|
|
||||||
|
// Vérifier si la case est sur le bord de la région verticalement
|
||||||
|
if ((i + 1) % REGION_SIZE == 0 && i != GRID_SIZE - 1) {
|
||||||
|
bottom = 5; // Ajouter une bordure plus épaisse en bas
|
||||||
|
}
|
||||||
|
|
||||||
|
// Appliquer la bordure à la case
|
||||||
|
grid[i][j].setBorder(BorderFactory.createMatteBorder(top, left, bottom, right, Color.BLACK));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Panneau pour les boutons
|
||||||
|
JPanel bouton = new JPanel();
|
||||||
|
bouton.setBackground(new Color(88, 169, 191));
|
||||||
|
bouton.setPreferredSize(new Dimension(150, 0)); // Espace pour les boutons
|
||||||
|
|
||||||
|
// Bouton pour sauvegarder la grille
|
||||||
|
JButton save = new JButton("Sauvegarder");
|
||||||
|
|
||||||
|
SaveButton saver = new SaveButton(GRID_SIZE,grid);
|
||||||
|
|
||||||
|
save.addActionListener(saver);
|
||||||
|
|
||||||
|
|
||||||
|
// Bouton pour chargé la grille
|
||||||
|
JButton load = new JButton("Charger");
|
||||||
|
|
||||||
|
LoadButton loader = new LoadButton(GRID_SIZE, grid);
|
||||||
|
|
||||||
|
load.addActionListener(loader);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
bouton.add(load);
|
||||||
|
bouton.add(save);
|
||||||
|
|
||||||
|
|
||||||
|
// Ajout des panneaux à la fenetre
|
||||||
|
getContentPane().add(gridPanel, BorderLayout.CENTER);
|
||||||
|
getContentPane().add(bouton, BorderLayout.EAST);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
83
SudokuGridJoueur.java
Normal file
83
SudokuGridJoueur.java
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
|
|
||||||
|
public class SudokuGridTesteur extends JFrame {
|
||||||
|
private static final int GRID_SIZE = 9; // Taille de la grille Sudoku 9x9
|
||||||
|
private static final int REGION_SIZE = 3;
|
||||||
|
public static final boolean BOOL = false;
|
||||||
|
private JTextField[][] grid;
|
||||||
|
|
||||||
|
public SudokuGridTesteur() {
|
||||||
|
// Panneau pour la grille Sudoku.
|
||||||
|
JPanel gridPanel = new JPanel();
|
||||||
|
gridPanel.setLayout(new GridLayout(GRID_SIZE, GRID_SIZE)); // Utiliser GridLayout
|
||||||
|
gridPanel.setBackground(new Color(88, 169, 191)); // Fond vert
|
||||||
|
|
||||||
|
// Initialiser la grille
|
||||||
|
grid = new JTextField[GRID_SIZE][GRID_SIZE];
|
||||||
|
for (int i = 0; i < GRID_SIZE; i++) {
|
||||||
|
for (int j = 0; j < GRID_SIZE; j++) {
|
||||||
|
grid[i][j] = new JTextField();
|
||||||
|
|
||||||
|
TextFilter filtre = new TextFilter(grid[i][j], GRID_SIZE, grid, i, j);
|
||||||
|
|
||||||
|
grid[i][j].addKeyListener(filtre);
|
||||||
|
grid[i][j].setHorizontalAlignment(JTextField.CENTER);
|
||||||
|
grid[i][j].setFont(new Font("Verdana", Font.BOLD,40));
|
||||||
|
gridPanel.add(grid[i][j]);
|
||||||
|
|
||||||
|
int top = 1;
|
||||||
|
int left = 1;
|
||||||
|
int bottom = 1;
|
||||||
|
int right = 1;
|
||||||
|
|
||||||
|
// Vérifier si la case est sur le bord de la région horizontalement
|
||||||
|
if ((j + 1) % REGION_SIZE == 0 && j != GRID_SIZE - 1) {
|
||||||
|
right = 5; // Ajouter une bordure plus épaisse à droite
|
||||||
|
}
|
||||||
|
|
||||||
|
// Vérifier si la case est sur le bord de la région verticalement
|
||||||
|
if ((i + 1) % REGION_SIZE == 0 && i != GRID_SIZE - 1) {
|
||||||
|
bottom = 5; // Ajouter une bordure plus épaisse en bas
|
||||||
|
}
|
||||||
|
|
||||||
|
// Appliquer la bordure à la case
|
||||||
|
grid[i][j].setBorder(BorderFactory.createMatteBorder(top, left, bottom, right, Color.BLACK));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Panneau pour les boutons
|
||||||
|
JPanel bouton = new JPanel();
|
||||||
|
bouton.setBackground(new Color(88, 169, 191));
|
||||||
|
bouton.setPreferredSize(new Dimension(150, 0)); // Espace pour les boutons
|
||||||
|
|
||||||
|
// Bouton pour sauvegarder la grille
|
||||||
|
JButton save = new JButton("Sauvegarder");
|
||||||
|
|
||||||
|
SaveButton saver = new SaveButton(GRID_SIZE,grid);
|
||||||
|
|
||||||
|
save.addActionListener(saver);
|
||||||
|
|
||||||
|
|
||||||
|
// Bouton pour chargé la grille
|
||||||
|
JButton load = new JButton("Charger");
|
||||||
|
|
||||||
|
LoadButton loader = new LoadButton(GRID_SIZE, grid);
|
||||||
|
|
||||||
|
load.addActionListener(loader);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
bouton.add(load);
|
||||||
|
bouton.add(save);
|
||||||
|
|
||||||
|
|
||||||
|
// Ajout des panneaux à la fenetre
|
||||||
|
getContentPane().add(gridPanel, BorderLayout.CENTER);
|
||||||
|
getContentPane().add(bouton, BorderLayout.EAST);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Reference in New Issue
Block a user