Java编程使用箱式布局管理器示例【基于swing组件】

本文实例讲述了Java编程使用箱式布局管理器。分享给大家供大家参考,具体如下:

先来看看运行效果:

Java编程使用箱式布局管理器示例【基于swing组件】_第1张图片

完整代码如下:

package awtDemo;
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
/**
 * 使用箱式布局管理器
 * 
 * @author HAN
 *
 */
public class BoxLayout_1 extends JFrame {
    /**
   *
   */
    private static final long serialVersionUID = 6896925750596855002L;
    public BoxLayout_1() {
        // TODO Auto-generated constructor stub
        Container container = getContentPane();
        Box box = Box.createVerticalBox();
        container.add(box, BorderLayout.NORTH);
        box.add(Box.createVerticalStrut(5));
        Box topicBox = Box.createHorizontalBox();
        box.add(topicBox);
        topicBox.setAlignmentX(1);
        topicBox.add(Box.createHorizontalStrut(5));
        JLabel topicLabel = new JLabel("主题:");
        topicBox.add(topicLabel);
        topicBox.add(Box.createHorizontalStrut(5));
        JTextField topicTextField = new JTextField(30);
        topicBox.add(topicTextField);
        Box box2 = Box.createVerticalBox();
        container.add(box2, BorderLayout.CENTER);
        Box contentBox = Box.createHorizontalBox();
        contentBox.setAlignmentX(1);
        box2.add(Box.createVerticalStrut(5));
        box2.add(contentBox);
        contentBox.add(Box.createHorizontalStrut(5));
        JLabel contentLabel = new JLabel("内容:");
        contentLabel.setAlignmentY(0);
        contentBox.add(contentLabel);
        contentBox.add(Box.createHorizontalStrut(5));
        StringBuilder stringBuilder = new StringBuilder();
        String contentString = new String("利用箱式布局管理器实现组件的右对齐"
                + "和上对齐,以及控制组件之间的间距!");
        stringBuilder.append(contentString);
        stringBuilder.append("\n");
        stringBuilder.append(contentString);
        contentString = stringBuilder.toString();
        JTextArea contentTextArea = new JTextArea(contentString, 3, 30);
        contentTextArea.setLineWrap(true);
        JScrollPane scrollPane = new JScrollPane();
        scrollPane.setAlignmentY(0);
        scrollPane.setViewportView(contentTextArea);
        contentBox.add(scrollPane);
        contentBox.add(Box.createHorizontalStrut(5));
        // System.out.println(contentTextArea.requestFocusInWindow());
        box2.add(Box.createVerticalStrut(5));
        JButton submitButton = new JButton("确定");
        box2.add(submitButton);
        submitButton.setAlignmentX(1);
        box2.add(Box.createVerticalStrut(5));
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        BoxLayout_1 frame = new BoxLayout_1();
        frame.setTitle("www.jb51.net - 使用箱式布局管理器");
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.pack();
    }
}

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

你可能感兴趣的:(Java编程使用箱式布局管理器示例【基于swing组件】)