Estoy creando una interfaz en java y quiero alinear el botón a la derecha. He intente, pero no su trabajo. Alguien me puede decir cómo hacerlo?

import java.awt.Color;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;


public class Button_Alignment extends JFrame{
    public JPanel header,body,footer;
    public JButton add1;
    public JButton save;
    public Button_Alignment(){
        super("BUTTON");
        GridLayout g1 = new GridLayout(3,1);
        setLayout(g1);
        //////
        header = new JPanel();
        JButton add1 = new JButton("add");
        header.add(add1);
        JButton save = new JButton("save");
        header.add(save);
        //////
        add(header);
        header.setBackground(Color.cyan);
    }
    public static void main(String[] args){
        Button_Alignment ba = new Button_Alignment();
        ba.setSize(400, 400);
        ba.setVisible(true);
    }
}
  • El uso de un diseño adecuado del administrador.
InformationsquelleAutor Ravi77 | 2012-01-23

4 Comentarios

  1. 4

    Su diseño actual manager (GridLayout) se crea con 3 filas y una sola columna. Por lo tanto, los componentes que añadir a la JFrame aparecerá verticalmente de arriba a abajo. Peor aún, GridLayout se parte del espacio igualmente entre todos los 3 componentes, lo que significa que los botones se extienden en ambas direcciones, lo que es casi seguro que no lo que usted requiere.

    Me gustaría considerar el uso de una alternativa administrador de diseño. Para los esquemas simples que tienden a favorecer a los BorderLayout o FlowLayout. Para obtener más complejos diseños, me inclino hacia GridBagLayout aunque hay otros que prefieren MigLayout.

    Más información aquí.

    • GridBagLayout es complicado de usar…
    • Una vez que te familiarices con él, GridBagLayout no es tan difícil, y ofrece un alto grado de flexibilidad. Como ya he dicho, aunque hay otros que prefieren MigLayout.
    • amigo yo lo tengo:) Gracias a todos por su ayuda:) he utilizado FlowLayout y, a continuación, he alineado a la derecha.
  2. 2

    Tratar como este:

    JButton save = new JButton ("save");
    setLayout (new BorderLayout ());
    add (save, BorderLayout.EAST);
    • han intentarlo, pero yo no lo quiero así. Quiero tanto botón en el lado derecho.
  3. 0

    establece GridLayout a la JFrame constructor, en lugar de JPanel (JPanel por defecto FlowLayout), creo que

    header.setLayout(new GridLayout(3,1));
    header.add(add1);
    header.add(save);

    aviso —> pero GridLayout en la actual ComponentOrientations para empezar de izquierda a derecha, then 3rd. grid is empty

    a continuación, sólo para agregar JFrame#add(JPanel), en su caso

    add(header);
  4. 0

    Un rápido y sucio manera es poner el botón [o un contenedor inmediatamente envolver el botón, si desea agregar otros componentes a la derecha, junto a su botón de] en un recipiente que se utiliza el BorderLayout y el uso de la BorderLayout.EAST diseño de restricción para que el botón [o envolver el recipiente].

Dejar respuesta

Please enter your comment!
Please enter your name here