Foros del Web » Programación para mayores de 30 ;) » Java »

Método getContentPane en Java

Estas en el tema de Método getContentPane en Java en el foro de Java en Foros del Web. Hola a todos, quizás mi pregunta parezca muy tonta y hasta me da un poco de pena preguntar, pero como solía decir un maestro "no ...
  #1 (permalink)  
Antiguo 07/04/2012, 00:57
 
Fecha de Ingreso: agosto-2008
Mensajes: 96
Antigüedad: 15 años, 8 meses
Puntos: 0
Pregunta Método getContentPane en Java

Hola a todos, quizás mi pregunta parezca muy tonta y hasta me da un poco de pena preguntar, pero como solía decir un maestro "no hay preguntas tontas, solo tontos que no preguntan" me animé a preguntar. Soy novato en java y al estudiar los contenedores me topo con el método de getContentPane, se que devuelve la referencia al objeto del panel del contenido, lo que aun no me queda en claro es la diferencia entre estas dos líneas:


<objetoJFrame>.getContentPane().add(<elemento>)

u

<objetoJFrame>.add(<elemento>)



¿Cuál es la diferencia entre ambas? o ¿En qué casos se aplica una o la otra? Muchas gracias de antemano y perdón si parezco muy novato, pero me interesa aprender de verdad.
  #2 (permalink)  
Antiguo 07/04/2012, 03:38
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: Método getContentPane en Java

Hola:

Un JFrame tiene dentro como contenedor un JRootPane y es el único componente que tiene añadido y permite un JFrame. Este JRootPane es un tanto especial y permite poner una barra de menú, un contenido principal (el contentPane) y un GlassPane (un panel transparente encima de todo que permite hacer ciertas cosas). http://docs.oracle.com/javase/6/docs...JRootPane.html

El sitio correcto para añadir tus componentes (salvo que sea una barra de menú) es el contentPane, por ello la llamada correcta es jframe.getContentPane().add(componente).

El JFrame tiene una propiedad rootPaneCheckingEnabled que hace que el método jframe.add(componente) redirija el componente hacia el contentPane. Por ello, jframe.add(componente) es correcto por defecto y hace lo mismo que jframe.getContentPane().add(componente), pero puede no funcionar si alguien cambia esa propiedad del JFrame. Java da un warning si intentas usar ese método jframe.add(componente) directamente. http://docs.oracle.com/javase/6/docs...ng/JFrame.html

Se bueno.
__________________
Apuntes Java
Wiki de Programación

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:46.