gridbaglayoutdemo.java

来自「Java 程序设计源码 只提供了部分」· Java 代码 · 共 92 行

JAVA
92
字号

import javax.swing.*;
import java.awt.*;

public class GridBagLayoutDemo extends JFrame {
	private GridBagLayout gbLayout = new GridBagLayout();
	private GridBagConstraints constraints= new GridBagConstraints();
	private JLabel jlbUser,jlbPassword;
	private JTextField jtfUser,jtfPassword;
	private JButton jbLog;
	private Container container;

	//构造	
	public GridBagLayoutDemo () {
		super("网格包布局");
		this.setSize(300,200);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}

	//方法
	private void setConstraints(GridBagConstraints gbc, int row, int column,
					int numRows, int numColumns,int Weightx,
					int Weighty){
		gbc.gridx = row;
		gbc.gridy = column;
		gbc.gridwidth = numRows;
		gbc.gridheight = numColumns;
		gbc.weightx = Weightx;
		gbc.weighty = Weighty;
	}

	//方法
	public void setLayout() {
		container = this.getContentPane();
		container.setLayout(gbLayout);
	
		//添加jlbUser
		constraints.fill = GridBagConstraints.NONE;
		constraints.anchor = GridBagConstraints.CENTER;

		setConstraints(constraints,0,0,1,1,0,0);
		jlbUser = new JLabel("User");
	
		gbLayout.setConstraints(jlbUser,constraints);
		container.add(jlbUser);

		//添加jtfUser
		constraints.fill = GridBagConstraints.HORIZONTAL;
		
		setConstraints(constraints,1,0,1,1,100,100);
		jtfUser = new JTextField();

		gbLayout.setConstraints(jtfUser,constraints);
		container.add(jtfUser);

		//添加jlbPassword
		constraints.fill = GridBagConstraints.NONE;
		
		setConstraints(constraints,0,1,1,1,0,0);
		jlbPassword = new JLabel("Password");

		gbLayout.setConstraints(jlbPassword,constraints);
		container.add(jlbPassword);

		//添加jtfPassword
		constraints.fill = GridBagConstraints.HORIZONTAL;
		
		setConstraints(constraints,1,1,1,1,100,100);	
		jtfPassword = new JTextField();

		gbLayout.setConstraints(jtfPassword,constraints);
		container.add(jtfPassword);

		//添加jbLog
		constraints.fill = GridBagConstraints.CENTER;

		setConstraints(constraints,0,2,1,1,0,0);
		jbLog = new JButton("Login");

		gbLayout.setConstraints(jbLog,constraints);
		container.add(jbLog);
	}

	public static void main(String[] args) {
		GridBagLayoutDemo frame = new GridBagLayoutDemo();

		frame.setLayout();

		frame.setVisible(true);
	}		

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?