Hola:
En java con ventanas hay un hilo que se encarga del pintado de las ventanas. Ese hilo es el mismo con el que se despachan los eventos de ratón, teclado, pulsación de botones, etc.
Si al recibir uno de estos eventos duermes el hilo con sleep(), se quedarán todas las ventanas sin repintarse ni actualizarse hasta que termines con tu código de sleep() y lo que vaya detrás. Quizás sea eso lo que te está pasando.
Aquí puedes ver cómo
evitar bloquear ese hilo de repintado.
Se bueno.