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 ###
|
||||
|
||||
Main.class : Main.java SudokuGrid.class
|
||||
${JC} ${JCFLAGS} Main.java
|
||||
Concepteur.class : Concepteur.java SudokuGridConcepteur.class
|
||||
${JC} ${JCFLAGS} Concepteur.java
|
||||
|
||||
SudokuGrid.class : SudokuGrid.java TextFilter.class SaveButton.class LoadButton.class VerifButton.class
|
||||
${JC} ${JCFLAGS} SudokuGrid.java
|
||||
Joueur.class : Joueur.java SudokuGridJoueur.class
|
||||
${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
|
||||
${JC} ${JCFLAGS} TextFilter.java
|
||||
@@ -22,14 +28,14 @@ SaveButton.class : SaveButton.java
|
||||
LoadButton.class : LoadButton.java
|
||||
${JC} ${JCFLAGS} LoadButton.java
|
||||
|
||||
VerifButton.class : VerifButton.java
|
||||
${JC} ${JCFLAGS} VerifButton.java
|
||||
|
||||
|
||||
### REGLES OPTIONNELLES ###
|
||||
|
||||
run : Main.class
|
||||
${J} Main
|
||||
Concepteur : Concepteur.class
|
||||
${J} Concepteur
|
||||
|
||||
Joueur : Joueur.class
|
||||
${J} Joueur
|
||||
|
||||
clean :
|
||||
-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