Java Swing - BoxLayout

BoxLayout trong Java Swing

Lớp BoxLayout trong Java Swing được sử dụng để sắp xếp các thành phần hoặc theo chiều dọc hoặc theo chiều ngang. Để phục vụ mục đích này, lớp BoxLayout cung cấp 4 hằng:

1. public static final int X_AXIS

2. public static final int Y_AXIS

3. public static final int LINE_AXIS

4. public static final int PAGE_AXIS

 

Constructor của lớp BoxLayout

BoxLayout(Container c, int axis): tạo một box layout mà sắp xếp các thành phần theo trục đã cho.

Ví dụ về lớp BoxLayout với trục Y
 

package vn.viettuts.swing;
 
import java.awt.Button;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
 
import javax.swing.BoxLayout;
 
public class BoxLayoutExam1 extends Frame {
    Button buttons[];
 
    public BoxLayoutExam1() {
        buttons = new Button[5];
 
        for (int i = 0; i < 5; i++) {
            buttons[i] = new Button("Button " + (i + 1));
            add(buttons[i]);
        }
 
        setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
        setSize(400, 400);
        setVisible(true);
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent we) {
                System.exit(0);
            }
        });
    }
 
    public static void main(String args[]) {
        BoxLayoutExam1 boxLayout = new BoxLayoutExam1();
    }
}

Chạy chương trình trên cho kết quả như sau:

BoxLayout trong Java Swing

Ví dụ về lớp BoxLayout với trục X
 

package vn.viettuts.swing;
 
import java.awt.Button;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
 
import javax.swing.BoxLayout;
 
public class BoxLayoutExam2 extends Frame {
    Button buttons[];
 
    public BoxLayoutExam2() {
        buttons = new Button[5];
 
        for (int i = 0; i < 5; i++) {
            buttons[i] = new Button("Button " + (i + 1));
            add(buttons[i]);
        }
 
        setLayout(new BoxLayout(this, BoxLayout.X_AXIS));
        setSize(400, 400);
        setVisible(true);
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent we) {
                System.exit(0);
            }
        });
    }
 
    public static void main(String args[]) {
        BoxLayoutExam2 boxLayout = new BoxLayoutExam2();
    }
}

Chạy chương trình trên cho kết quả như sau:

BoxLayout trong Java Swing