|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectnet.sf.bix.Bix
Layout manager que acomoda componentes en forma horizontal, vertical, o matricial.
Un punto a tener en cuenta de Bix, es que no se trata de un
LayoutManager convencional como los de Swing. Usted no debe
agregar los componentes al panel padre (generalmente el
panel que obtiene con JFrame.getContentPane()), si no que
simplemente debe crear un único Bix, y luego ir agregando
los componentes que desee a dicho Bix (o sub-Bixes).
Finalmente el componente hijo (Component) será agregado al panel
que usted especificó en la creación del primer Bix, pero no es su
trabajo hacerlo explícitamente como ocurre con otros Layout Managers.
Aquí tiene un ejemplo típico de cómo hacer una pantalla de login utilizando bixes:
Bix bix = new Bix(getContentPane(), Bix.VERTICAL); Bix matrix = bix.addMatrix(Bix.NONE, 2); matrix.add(userNameLabel); matrix.add(userName, Bix.FILL); matrix.add(passwordLabel); matrix.add(password, Bix.FILL); bix.add(new JSeparator()); Bix row = bix.addBix(Bix.HORIZONTAL); row.addBix(Bix.FILL); Bix subrow = row.addBix(Bix.HORIZONTAL | Bix.EVEN); subrow.add(loginButton); subrow.add(cancelButton);Lo que da como resultado una pantalla como esta:

La estructura interna de dicha pantalla puede visualizarse en la siguiente figura:

Un Bix puede ser horizontal, vertical o matricial. En cualquier caso,
cada celda puede ser un componente (por ej. un JLabel), o
un sub-bix (que a su vez puede ser horizontal, vertical o matricial).
Cualquiera sea el caso, cada celda puede ser expansible o no, esto
se debe especificar en las banderas de los métodos
add(Component, int), addBix(int) o addMatrix(int, int).
| Field Summary | |
static int |
EVEN
Para crear un Bix uniforme. |
static int |
FILL
Para que este Bix, o un componente se expanda debe especificar esta bandera al agregarlo. |
static int |
HFILL
Rellenar sólo la fila horizontalmente (cuando se está dentro de una matriz) |
static int |
HORIZONTAL
Para crear un Bix con orientación horizontal debe especificar esta bandera. |
static int |
NONE
Sin banderas. |
static int |
VERTICAL
Para crear un Bix con orientación vertical. |
static int |
VFILL
Rellenar sólo la columna verticalmente (cuando se está dentro de una matriz) |
| Constructor Summary | |
Bix(java.awt.Container container,
int flags)
Crea un nuevo Layout Manager Bix para el contenedor especificado en container y con las banderas especificadas en flags.
|
|
| Method Summary | |
void |
add(java.awt.Component component)
Agrega una celda que contendrá el componente especificado (sin banderas). |
void |
add(java.awt.Component component,
int flags)
Agrega una celda con el componente y las banderas especificadas. |
Bix |
addBix(int flags)
Agrega un nuevo sub-Bix con las banderas especificadas en flags. |
void |
addEmpty()
|
void |
addLayoutComponent(java.awt.Component comp,
java.lang.Object constraints)
|
void |
addLayoutComponent(java.lang.String name,
java.awt.Component comp)
|
Bix |
addMatrix(int flags,
int cols)
Crea una celda que contendrá un nuevo Bix de forma matricial. |
int |
getBorder()
Devuelve el tamaño del borde. |
int |
getChildSpacing()
Devuelve el tamaño entre celdas. |
float |
getLayoutAlignmentX(java.awt.Container target)
|
float |
getLayoutAlignmentY(java.awt.Container target)
|
void |
invalidateLayout(java.awt.Container target)
|
boolean |
isEven()
Devuelve true si el Bix es uniforme. |
boolean |
isFill()
Devuelve true en el caso que esta Bix utilice el tamaño libre de la Bix padre. |
boolean |
isFill(java.awt.Component comp)
Devuelve true si el componente especificado tiene la propiedad de expansible (Bix.FILL) activada. |
boolean |
isHFill()
|
boolean |
isHorizontal()
Devuelve true si la orientación del Bix es horizontal. |
boolean |
isVertical()
Devuelve true si la orientación del Bix es vertical. |
boolean |
isVFill()
|
void |
layoutContainer(java.awt.Container parent)
El método principal de todo Layout Manager que se encarga de acomodar los componentes del contenedor parent. |
java.awt.Dimension |
maximumLayoutSize(java.awt.Container target)
Obtiene el tamaño máximo posible que puede tener el Bix. |
java.awt.Dimension |
minimumLayoutSize(java.awt.Container parent)
Obtiene el tamaño mínimo posible que puede tener el Bix. |
java.awt.Dimension |
preferredLayoutSize(java.awt.Container parent)
Obtiene el tamaño preferido del Bix. |
void |
removeLayoutComponent(java.awt.Component comp)
|
void |
setBorder(int border)
Cambia el tamaño del borde. |
void |
setChildSpacing(int childSpacing)
Cambia el interespaciado de celdas. |
void |
setEven(boolean even)
Convierte el Bix en uniforme o no dependiendo del parámetro especificado. |
void |
setFill(boolean fill)
Convierte a este Bix en expansivo o no (cambiando el estado de la bandera Bix.FILL). |
void |
setFill(java.awt.Component comp,
boolean fill)
Convierte al componente (que es hijo de este Bix) en expansivo o no. |
void |
setHorizontal()
Convierte el Bix a orientación horizontal. |
void |
setVertical()
Convierte el Bix a orientación vertical. |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
public static final int NONE
public static final int HORIZONTAL
public static final int VERTICAL
public static final int EVEN
public static final int HFILL
public static final int VFILL
public static final int FILL
| Constructor Detail |
public Bix(java.awt.Container container,
int flags)
container y con las banderas especificadas en flags.
Usted no tiene la necesidad de hacer un container.setLayout(bix)
explícito, ya que este constructor lo hace por usted.
El tamaño del borde (getBorder) por defecto es de 4
píxeles para el Bix principal, y 0 píxeles para los sub-Bixes que
se agregan mediante addBix. El espaciado entre
componentes (getChildSpacing) es siempre de 4 píxeles por defecto.
container - Contenedor al cual setear el Layout Manager.flags - banderas (propiedades) que debe poseer el Bix, puede ser una
combinación de los siguientes valores:
getBorder(),
addBix(int),
getChildSpacing()| Method Detail |
public Bix addBix(int flags)
flags.
flags - banderas (propiedades) que debe poseer el Bix, puede ser una
combinación de los siguientes valores:
this
se convierte en el padre).
public Bix addMatrix(int flags,
int cols)
cols - Cantidad de columnas.
MatrixBixpublic void addEmpty()
public void add(java.awt.Component component)
component - El componente a agregar en la nueva celda
public void add(java.awt.Component component,
int flags)
component - componente a agregar en la nueva celdaflags - propiedades de la nueva celdapublic boolean isEven()
No tiene sentido agregar componentes con la propiedad Bix.FILL a los Bix uniforme, ya que todos los componentes se expanderán al mismo tiempo y con una misma proporción.
public boolean isHorizontal()
public boolean isVertical()
public boolean isFill()
public boolean isVFill()
public boolean isHFill()
public boolean isFill(java.awt.Component comp)
comp -
public void setFill(boolean fill)
fill -
public void setFill(java.awt.Component comp,
boolean fill)
comp - El componente a cambiarle su estado expansivo.fill - true si quiere que el componente se expanda, o false
en caso contrario.public void setHorizontal()
public void setVertical()
public void setEven(boolean even)
even - true si desea que el Bix sea uniforme, false
en caso contrario.public int getBorder()
setBorder(int)public void setBorder(int border)
border - getBorder()public int getChildSpacing()
setChildSpacing(int)public void setChildSpacing(int childSpacing)
childSpacing - getChildSpacing()
public void addLayoutComponent(java.lang.String name,
java.awt.Component comp)
addLayoutComponent in interface java.awt.LayoutManager
public void addLayoutComponent(java.awt.Component comp,
java.lang.Object constraints)
addLayoutComponent in interface java.awt.LayoutManager2public void removeLayoutComponent(java.awt.Component comp)
removeLayoutComponent in interface java.awt.LayoutManagerpublic java.awt.Dimension minimumLayoutSize(java.awt.Container parent)
minimumLayoutSize in interface java.awt.LayoutManagerpublic java.awt.Dimension maximumLayoutSize(java.awt.Container target)
maximumLayoutSize in interface java.awt.LayoutManager2public java.awt.Dimension preferredLayoutSize(java.awt.Container parent)
preferredLayoutSize in interface java.awt.LayoutManagerpublic void layoutContainer(java.awt.Container parent)
parent.
layoutContainer in interface java.awt.LayoutManagerpublic float getLayoutAlignmentX(java.awt.Container target)
getLayoutAlignmentX in interface java.awt.LayoutManager2public float getLayoutAlignmentY(java.awt.Container target)
getLayoutAlignmentY in interface java.awt.LayoutManager2public void invalidateLayout(java.awt.Container target)
invalidateLayout in interface java.awt.LayoutManager2
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||