2008-10-01 14 views
6

Tengo un JLabel (en realidad, es un JXLabel).Cómo agregar un espacio horizontal con un JLabel

He puesto un ícono y un texto en él.

<icon><text>

Ahora varita para añadir un poco de espacio y en el lado izquierdo del componente, como este:

<space><icon><text>

no acepto la sugerencia para mover el JLabel o añadir el espaciamiento de modificando la imagen.

Solo quiero saber cómo hacerlo con el código Java simple.

Respuesta

13

he encontrado la solución!

setBorder(new EmptyBorder(0,10,0,0)); 

¡Gracias a todos!

4

El de esta manera: no es muy clara, pero puede agregar el espaciamiento mediante la adición de un borde transparente de un determinado ancho de la etiqueta

2

Si usted está tratando de empujar la etiqueta a un lado de él es envase, puedes agregar un pegamento Algo como esto:

JPanel panel = new JPanel(); 
panel.setLayoutManager(new BoxLayout(panel, BoxLayout.LINE_AXIS); 

panel.add(new JLabel("this is your label with it's image and text")); 

panel.add(Box.createHorizontalGlue()); 

Aunque su pregunta no es muy clara.

1

Usted no necesita modificar el preferredSize del JLabel, puede utilizar el Administrador de GridBagLayout para especificar las separaciones entre los componentes, es suficiente con utilizar el GridBagLayout en el recipiente y añadir el JXLabel a ella con un objeto GridBagConstraints se especifiquen las inserciones a la izquierda:

JPanel panel=new JPanel(new GridBagLayout()); 
JLabel label=new JLabel("xxxxx"); 

GridBagConstraints constraints=new GridBagConstraints(); 

constraints.insest.left=X; // X= number of pixels of separation from the left component 

panel.add(label,constraints); 

en cuenta que he omitido una gran cantidad de propiedades de configuración en la configuración de las restricciones, se lee mejor la documentacion de GridBagLayout

Cuestiones relacionadas