cuando objJFrame.validate() no es suficiente ¿cual es la mejor opción?

Hola javamexico.org

estoy jugando con swing y he notado que muchas veces al eliminar y añadir nuevos elementos al JFrame me basta con invocar el método validate() para que presente todo correctamente
PERO
en otros casos no.

En los casos que no estoy primero invocando en el JFrame el método setVisible( false), luego validate() y finalmente setVisible( true )
pero esto hace que se note cuando desaparece y aparece la ventana

¿Hay alguna mejor manera de presentar los elementos gráficos correctamente cuando el método validate() no es suficiente a la forma que realizo?

Agradezco colaboración.

Un saludo.