Para "desactivar" la interfaz mientras muestras la barra de progreso y haces la tarea en background, lo que se hace es hacer visible un panel semitransparente encima del panel que quieres "bloquear" y que impide que los eventos de raton lleguen a la interfaz.
Ese tipo de paneles se conocen como GlassPane.
Aquí algo más de información, y buscando en google más ejemplos:
http://java.sun.com/docs/books/tutor.../rootpane.html http://www.java2s.com/Code/Java/Swin...fGlassPane.htm
Un ejemplo de un tío que sabe mucho de interfaces:
http://www.curious-creature.org/2005...tyle-in-swing/
S!