Il mio problema riguarda la velocit� con cui il mio JPanel si muove alla pressione di un tasto da me definito. Si muove troppo lentamente nonostante abbia impostato la pausa dell'esecuzione a un millisecondo[Thread.sleep(1)]. Il programma � composto dal main che gestisce il JFrame principale e da un'altra classe che estende il JPanel, chiamata Point.

Main

codice:
import javax.swing.JFrame;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
public class Main extends JFrame{
 Point point=new Point();
 public Main(){
  super("PROVA");
  setExtendedState(JFrame.MAXIMIZED_BOTH);
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setVisible(true);
  addKeyListener(point);
  add(point);
  while(true){
   repaint();
  }
 }
 public static void main(String[] args){
  new Main();
 }
}
Point

codice:
import javax.swing.JPanel;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
import java.awt.Graphics;
import java.awt.Color;
public class Point extends JPanel implements KeyListener{
 private int x=10;
 private int y=10;
 public void paintComponent(Graphics g){
  g.setColor(Color.BLACK);
  g.fillRect(x, y, 20, 20);
 }
 public void keyPressed(KeyEvent e){
  switch(e.getKeyChar()){
  case('d'):
   x++;
   try {
    Thread.sleep(1);
   } catch (InterruptedException e1) {
    e1.printStackTrace();
   }
  }
 }
 public void keyReleased(KeyEvent e){}
 public void keyTyped(KeyEvent e){}
}