vertical gridlayout dividir como botones borderlayout acomodar java swing user-interface jbutton boxlayout

java - gridlayout - ¿Cómo puedo agregar un espacio entre dos botones en un boxLayout?



gridlayout en java (1)

Si desea tener espacio entre los componentes, puede agregar un borde vacío a uno o ambos componentes, o insertar componentes invisibles para proporcionar el espacio. Puede crear componentes invisibles con la ayuda de la clase Box.

como ya usaste pegamento sin éxito (¿dudo por qué?), puedes probar algo como área rígida ,

container.add(firstComponent); container.add(Box.createRigidArea(new Dimension(5,0))); container.add(secondComponent);

Eche un vistazo al uso de componentes invisibles como relleno, que le ofrece muchas opciones y explicaciones.

INFORMACIÓN ADICIONAL, de poner espacio entre componentes ,

Tres factores influyen en la cantidad de espacio entre los componentes visibles en un contenedor:

  • El administrador de disposición

    Algunos administradores de diseño ponen automáticamente espacio entre los componentes; Otros no lo hacen. Algunos le permiten especificar la cantidad de espacio entre los componentes. Consulte la página de instrucciones para cada administrador de diseño para obtener información sobre el soporte de espaciado.

  • Componentes invisibles

    Puede crear componentes livianos que no realizan pintura, pero que pueden ocupar espacio en la GUI. A menudo, utiliza componentes invisibles en contenedores controlados por BoxLayout . Consulte Cómo utilizar BoxLayout para obtener ejemplos de cómo usar componentes invisibles.

  • Bordes vacíos

    Independientemente del administrador de disposición, puede afectar la cantidad aparente de espacio entre los componentes agregando bordes vacíos a los componentes. Los mejores candidatos para bordes vacíos son componentes que normalmente no tienen ningún borde predeterminado, como paneles y etiquetas. Es posible que algunos otros componentes no funcionen bien con las fronteras en algunas implementaciones de apariencia y sentido, debido a la forma en que se implementa su código de pintura. Para obtener información acerca de los bordes, consulte Cómo usar los bordes .

Tengo cuatro botones en un grupo BoxLayout . Esto es solo una muestra de dos porque es todo código repetido. Quiero crear un espacio pequeño entre cada botón para que no se encuentren entre sí. .add(Box.Create....) prácticamente todos los métodos en .add(Box.Create....) y nada funcionó.

enter.add(Box.createVerticalGlue()); enter.add(Box.createHorizontalGlue()); //enter.add(new JSeparator(SwingConstants.HORIZONTAL)); JButton float = new JButton("LOWER"); float.add(Box.createVerticalGlue()); float.add(Box.createHorizontalGlue());