Hola:
Hay un hilo de java que se encarga de pintar las ventanas. Si dibujas el progress bar en ese hilo, haces las tareas que tengas que hacer en ese hilo e incrementas el progress bar en ese hilo, no lo estás dejando libre para que pinte el progress bar y se le vea avanzar. Las tareas y el incremento del progress bar debes hacerlo en un hilo separado, que no sea directamente en el actionPerformed() de un botón o el keyListener() de teclado (en general, en ningún evento de teclado o ratón).
Una opción que da java es usar un SwingWorker
http://chuwiki.chuidiang.org/index.php?title=Ejemplo_sencillo_con_SwingWorkerSi quieres ampliar un poco más esta información y ver cómo hacer la barra de progreso sin SwingWorker, echa un ojo en
http://chuwiki.chuidiang.org/index.php?title=El_hilo_de_awtSe bueno.