Sacar un jPanel y colocar otro en la misma posición

dvb
08 de Septiembre del 2009
Hola. Lo que deseo hacer es de un menú ubicado a la izquierda de un JFrame ir apretando botones y que cada botón haga aparecer un panel a la derecha del JFrame, o sea que al apretar un botón desaparezca el jPanel que estaba a la derecha y aparezca otro en la misma ubicación.
Ojala me puedan ayudar. Llevo un par de días intentándolo y no me resulta, solo hago desaparecer el panel pero no logro colocar el nuevo.

dvb
08 de Septiembre del 2009
Lo logre. Me respondo por si a alguien le sirve alguna vez.
El cáliz vendría a ser "CardLayout", para aprender a ocuparlo pueden ver estos enlaces: http://club.telepolis.com/mydream/Java/Awt/AWTCardL.html y http://www.cica.es/formacion/JavaTut/Cap4/clayout.html.
Ahora si están ocupando un IDE en mi caso NetBeans y les gusta arrastrar componentes.
1) Elegir el componente al que se quiere agregar CardLayout en el "Inspector" (NetBeans en español), menú con componentes ubicado en la esquina inferior izquierda.
2) Click derecho sobre el componente elegido e ir a "Asignar Diseño"-->"Diseño de carta" (CardLayout)
Y el código necesario para manejar el asunto es:

/************Código*************/
jPanel6.add(this.jPanel1,"menu1");
jPanel6.add(new panel2(),"menu2");
CardLayout paletas = (CardLayout(jPanel6.getLayout());
paletas.show(jPanel6, "menu1");
/************Fin código***********/

Donde jPanel6 viene a ser el Panel principal y sobre el hacemos aparecer el resto de los paneles (jPanel6 es un panel en blanco).
-add, permite agregar componentes en este caso paneles a jPanel6.

-jPanel6.add(this.jPanel1,"menu1"); --> this.jPanel1 es un panel local, o sea esta en la misma clase donde implemente el CardLayout y menu1 es un argumento que identifica al panel jPanel1.

-jPanel6.add(new panel2(),"menu2"); --> lo mismo que la línea anterior solo que en este caso se crea un panel contenido en otra clase.

-CardLayout paletas = (CardLayout(jPanel6.getLayout()); --> Esta es la parte que cambia entre hacerlo con NetBeans o a mano.

Netbeans autogenera el código --> jPanel6.setLayout(new java.awt.CardLayout()); o sea crea el CardLayout para jPanel6 y con CardLayout paletas = (CardLayout(jPanel6.getLayout()); estamos transmitiendo esa información al objeto paletas de tipo CardLayout. Para poder manejar el cambio de paneles a nuestro gusto.

-paletas.show(jPanel6, "menu1");
Esta última línea es la que permite visualizar el componente que deseamos.
Ojala sea de utilidad.
Saludos.

Faaa
08 de Septiembre del 2009
Hola... soy nueva programando en java y me surgio una duda en el paso uno donde dices: << 1) Elegir el componente al que se quiere agregar CardLayout en el "Inspector" (NetBeans en español), menú con componentes ubicado en la esquina inferior izquierda.>>.... Mi duda es... ese componente es el panel6 o es otro panel??

ES QUE ME SALE ERROR EN LA LINEA:
CardLayout paletas = (CardLayout(jPanel6.getLayout());