您的位置:首页 > 其它

swing 布局管理器 GridBagLayout

2013-05-21 16:33 267 查看
/**

*

*/

package demo.swing;

import javax.swing.*;

import java.awt.*;

public class test

{

static final int WIDTH=300;

static final int HEIGHT=150;

//写一个add方法方便下面在界面中添加组件

public void add(JPanel p,JComponent c,GridBagConstraints constraints,int x,int y,int w,int h)

{

constraints.gridx=x;

constraints.gridy=y;

constraints.gridwidth=w;

constraints.gridheight=h;

p.add(c,constraints);

}

//在构造方法中创建界面

test()

{

JFrame f=new JFrame("登陆窗口");

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setSize(WIDTH,HEIGHT);

JPanel contentPane=new JPanel();

f.setContentPane(contentPane);

contentPane.setLayout(new GridBagLayout());//添加布局管理器

GridBagConstraints constraints=new GridBagConstraints();//创建约束

///这是设置在桌面中间弹出窗口

Toolkit kit=Toolkit.getDefaultToolkit();

Dimension screenSize=kit.getScreenSize();

int x=(screenSize.width-WIDTH)/2;

int y=(screenSize.height-HEIGHT)/2;

f.setLocation(x,y);

///

JLabel name=new JLabel("用户名");

JLabel password=new JLabel("密码");

JTextField nameInput=new JTextField(12);

JPasswordField passwordInput=new JPasswordField(12);

JButton b1=new JButton("确定");

JButton b2=new JButton("取消");

//开始用add方法添加上面的组件

constraints.fill=GridBagConstraints.NONE;

constraints.anchor=GridBagConstraints.CENTER;

constraints.insets = new Insets(0,0,10,0); //设置外部填充

add(contentPane,name,constraints,0,0,1,1);

add(contentPane,nameInput,constraints,1,0,1,1);

add(contentPane,password,constraints,0,1,1,1);

add(contentPane,passwordInput,constraints,1,1,1,1);

add(contentPane,b1,constraints,0,2,1,1);

add(contentPane,b2,constraints,1,2,1,1);

f.setResizable(false);

f.setVisible(true);

}

public static void main(String[] args)

{

new test();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: