2012-09-25 314 views
31

Tengo un JPanel con algunos JLabel agregados con el método add() de JPanel. Quiero alinear el JLabel a la derecha como la imagen de abajo, pero no sé cómo hacerlo. ¿Alguna idea? ¡Gracias!Alinear texto en JLabel a la derecha

enter image description here

+0

¿Desea que el texto de la etiqueta se alinee horizontalmente? –

Respuesta

66

Esto puede hacerse de dos maneras.

JLabel Alineación horizontal

Puede utilizar el JLabelconstructor:

JLabel(String text, int horizontalAlignment) 

Para alinear a la derecha:

JLabel label = new JLabel("Telephone", SwingConstants.RIGHT); 

JLabel también tiene setHorizontalAlignment:

label.setHorizontalAlignment(SwingConstants.RIGHT); 

Esto supone que el componente ocupa todo el ancho del contenedor.

Usar diseño

Un enfoque diferente es utilizar el diseño para alinear en realidad el componente a la derecha, al tiempo que garantiza que no ocupa todo el ancho. Aquí hay un ejemplo con BoxLayout:

Box box = Box.createVerticalBox(); 
    JLabel label1 = new JLabel("test1, the beginning"); 
    label1.setAlignmentX(Component.RIGHT_ALIGNMENT); 
    box.add(label1); 

    JLabel label2 = new JLabel("test2, some more"); 
    label2.setAlignmentX(Component.RIGHT_ALIGNMENT); 
    box.add(label2); 

    JLabel label3 = new JLabel("test3"); 
    label3.setAlignmentX(Component.RIGHT_ALIGNMENT); 
    box.add(label3); 


    add(box); 
5
JLabel label = new JLabel("fax", SwingConstants.RIGHT); 
Cuestiones relacionadas