Java盒式布局的新用法示例代码

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

package com.hy.yd;

import java.awt.Color;

import java.awt.FlowLayout;

import javax.swing.Box;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JTextField;

import javax.swing.SwingConstants;

public class GuiLayoutExample {

public static void main(String[] args){

MainFrame mf=new MainFrame("用户登录界面");

}

}

class MainFrame extends JFrame{

public MainFrame(String str){

this.setTitle(str);

this.setSize(320,240);

this.setLayout(new FlowLayout());

//Box类是借助于BoxLayout管理器创建单行或单列组件的一个特殊容器

Box boxTitle,box1,box2,box3,boxBase,boxMain;

boxBase=Box.createHorizontalBox();//boxBase容器按照水平方向排列组件

boxMain=Box.createVerticalBox();//boxMain容器按照垂直方向排列组件

boxTitle=Box.createHorizontalBox();////boxTitle容器按照水平方向排列组件

box1=Box.createVerticalBox();////box1容器按照垂直方向排列组件

box1.add(new JLabel("name"));//box中加入标签name;

box1.add(Box.createVerticalStrut(8));//box1标签name下加入8个点的空白间距box1.add(new JLabel("sex"));//box中加入标签sex;

box1.add(Box.createVerticalStrut(8));//box1标签sex下加入8个点的空白间距box1.add(new JLabel("age"));//box中加入标签age;

box2=Box.createVerticalBox();//box2容器按照垂直方向排列组件

box2.add(new JTextField(10));//box2中加入文本框

box2.add(Box.createVerticalStrut(8));//box2中在文本框下加入8个点的空白间距box2.add(new JTextField(10));//box2中加入文本框

box2.add(Box.createVerticalStrut(8));//box2中在文本框下加入8个点的空白间距box2.add(new JTextField(10));//box2中加入文本框

box3=Box.createHorizontalBox();//box3容器按水平方向排列组件

box3.add(new JButton("登录"));//box3中加入登录按钮

box3.add(Box.createHorizontalStrut(15));//box3在按钮右边加入15个点的空白box3.add(new JButton("重写"));//box3中加入重写按钮

boxBase.add(box1);//boxBase容器中加入box1

boxBase.add(Box.createHorizontalStrut(8));//boxBase在右边加入8个点的空白boxBase.add(box2);//boxBase中加入box2

JLabel lblTitle=new JLabel("信息系统用户登录界面");

lblTitle.setOpaque(true);

lblTitle.setHorizontalAlignment(SwingConstants.CENTER);//标签文字居中

boxTitle.add(lblTitle);//lblTitle标签加入到boxTitle

//boxTitle.add(Box.createVerticalStrut(20));

boxMain.add(boxTitle);//boxtitle加入到boxMain

boxMain.add(Box.createVerticalStrut(20));//加入20空白区域

boxMain.add(boxBase);//boxBase加入到boxMain

boxMain.add(Box.createVerticalStrut(10));//加入10个空白区域

boxMain.add(box3);//box3加入到boxMain

this.add(boxMain);//将boxMain加入到JFrame中

this.setVisible(true);

}

}

相关文档
最新文档