Java如何使用BoxLayout布置swing组件?
此示例演示了如何使用BoxLayout布局管理器按行或列顺序排列组件。除了使用BoxLayout管理器外,我们还可以使用Box组件作为内容窗格,以获得与使用BoxLayout管理器相同的效果。
package org.nhooo.example.swing;
import javax.swing.*;
public class BoxLayoutDemo extends JFrame {
public BoxLayoutDemo() {
initialize();
}
private void initialize() {
setSize(400, 400);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
//使用BoxLayout.X_AXIS将内容窗格的布局设置为BoxLayout
//将组件从左到右排列。如果我们要安排
//组件自上而下我们可以使用BoxLayout.Y_AXIS;
setLayout(new BoxLayout(getContentPane(), BoxLayout.X_AXIS));
JLabel label = new JLabel("Username : ");
JTextField textField = new JTextField();
JLabel password = new JLabel("Password :");
JPasswordField passwordField = new JPasswordField();
getContentPane().add(label);
getContentPane().add(textField);
getContentPane().add(password);
getContentPane().add(passwordField);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new BoxLayoutDemo().setVisible(true);
}
});
}
}