diff --git a/Main.class b/Main.class
new file mode 100644
index 0000000..a4a07a8
Binary files /dev/null and b/Main.class differ
diff --git a/Makefile b/Makefile
index 33df9f6..9a9a5bd 100644
--- a/Makefile
+++ b/Makefile
@@ -10,9 +10,12 @@ J = java
 Main.class : Main.java SudokuGrid.class
 	${JC} ${JCFLAGS} Main.java
 
-SudokuGrid.class : SudokuGrid.java
+SudokuGrid.class : SudokuGrid.java TextFilter.class
 	${JC} ${JCFLAGS} SudokuGrid.java
 
+TextFilter.class : TextFilter.java
+	${JC} ${JCFLAGS} TextFilter.java
+
 
 ### REGLES OPTIONNELLES ###
 
diff --git a/SudokuGrid$1.class b/SudokuGrid$1.class
new file mode 100644
index 0000000..89d2bc5
Binary files /dev/null and b/SudokuGrid$1.class differ
diff --git a/SudokuGrid.class b/SudokuGrid.class
new file mode 100644
index 0000000..265d6fd
Binary files /dev/null and b/SudokuGrid.class differ
diff --git a/SudokuGrid.java b/SudokuGrid.java
index b6e69f2..75d917a 100644
--- a/SudokuGrid.java
+++ b/SudokuGrid.java
@@ -18,6 +18,10 @@ public class SudokuGrid extends JFrame {
         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[i][j].addKeyListener(filtre);
                 grid[i][j].setHorizontalAlignment(JTextField.CENTER);
                 gridPanel.add(grid[i][j]);
             }
diff --git a/TextFilter.class b/TextFilter.class
new file mode 100644
index 0000000..fea79d6
Binary files /dev/null and b/TextFilter.class differ
diff --git a/TextFilter.java b/TextFilter.java
new file mode 100644
index 0000000..debb732
--- /dev/null
+++ b/TextFilter.java
@@ -0,0 +1,32 @@
+import java.awt.event.*;
+import javax.swing.*;
+
+
+public class TextFilter extends  KeyAdapter  {
+
+    private JTextField Text;
+
+    public TextFilter (JTextField t) {
+
+	this.Text = t;
+    }
+
+    @Override
+
+    public void keyTyped(KeyEvent e) {
+	char chaine = e.getKeyChar();
+
+	int taille = Text.getText().length();
+	
+	if ( ((chaine < '0') || (chaine > '9')) && (chaine != KeyEvent.VK_BACK_SPACE)) {
+	    e.consume();  // ignorer l'événement
+	}
+
+	if ( taille >= 1 )  {
+
+	    e.consume();
+	}
+
+	
+    }
+}
diff --git a/TextFilter.java~ b/TextFilter.java~
new file mode 100644
index 0000000..94a00c6
--- /dev/null
+++ b/TextFilter.java~
@@ -0,0 +1,14 @@
+import java.awt.event.KeyListener;
+
+
+public class TextFilter implements KeyListener  {
+
+    @Override
+
+    public void keyTyped(KeyEvent e) {
+	char c = e.getKeyChar();
+	if ( ((c < '0') || (c > '9')) && (c != KeyEvent.VK_BACK_SPACE)) {
+	    e.consume();  // ignorer l'événement
+	}
+    }
+}