De hecho, modificar la interfaz no se debería hacer desde los gestores de eventos, ya que estas en el Thread de tratamiento de eventos y mientras toqueteas el GUI, el programa parece colgado. Investiga el uso de SwingWorker para que esto no te ocurra. Por ejemplo:
http://mundojava.blogspot.com/2006/1...orker-con.html