Java - Colocar en un JPanel

 
Vista:

Colocar en un JPanel

Publicado por Sepharat (13 intervenciones) el 14/01/2006 19:13:56
Hola, acabo de empezar en la programación en java y tenía una duda sobre la clase JPanel de swing. Hasta ahora había utilizado paneles auxiliares definidos con new BorderLayout() y doble buffer en los que iba metiendo los objetos usando "East", "West", "South", "North" y "Center" y que luego colocaba de la misma manera en otro más general. Pero me gustaría saber si hay alguna forma de colocarlos directamente en el panel, por ejemplo definiendo un número de filas y columnas en el contenedor y colocando los objetos de forma que ocupen un número de celdas que uno especifique (a lo gtk) o algo similar. Es que cuando uno quiere poner varias cosas acaba definiendo muchos paneles y se complica llevarlos
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Colocar en un JPanel

Publicado por chuidiang (950 intervenciones) el 15/01/2006 22:28:22
Hola:

Todos los contenedores java y en concreto el JPanel tienen dentro una clase llamada layout que es la que decide cómo se colocan los componentes en su interior.

Por defecto el JPanel lleva el BorderLayout(), que es el que tú utilizas. Define cinco posiciones (centro, este, oeste, norte y sur) para colocar cinco componente.

Si le pones un GridLayout, entonces el JPanel es como una rejilla en la que puedes poner MxN componentes. La pega es que deben ser todos iguales, del mismo tamaño, el layout se encarga de estirarlos o comprimirlos para que sea asi.

Si pones un FlowLayout, entonces todos los componentes van seguidos, uno detrás de otro, cada uno con el espacio que necesite.

En fin, hay un montón de ellos según las necesidades.

El más completo y complejo es el GridBagLayout. Este es el que se parece mas a lo que quieres. Define una rejilla, los componentes puedes ser de distintos tamaños y ocupar varias "celdas". Tienes un pequeño tutorial de este layout en http://www.geocities.com/chuidiang2/layout/GridBagLayout/GridBagLayout.html

Se bueno
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar