📄 javagui.java
字号:
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.Panel;
/***
* 图形设计加强
* 布局管理器
*
*
* LayoutManager布局管理器---有五大部分组成(FlowLayout,BorderLayout,GridLayout,CardLayout,GridBagLayout)
* @author Administrator
* FlowLayout 如果不采取布局,那默认是这个.逐行定位.从左到右从上到下
* BorderLayout 东南西北中 五个方向的布局
* GridLayout 把空间划分成有规则矩形的网络小格子
* CardLayout 一次只能看到一张卡片,容器则充当卡片的堆栈
* GridBagLayout 是一个灵活的布局管理器
* 注意 如果想自己手动设置,那么布局管理器要设置空setLayout(null)
*/
public class javagui {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
FlowLayout1();//逐行定位.从左到右从上到下
BorderLayout1();//东南西北中 五个方向的布局
GridLayout1();//把空间划分成有规则矩形的网络小格子
fbgLayout();//自定义布局
}
static void fbgLayout()
{
Frame f = new Frame("自己定义的");
f.setLayout(new GridLayout(2,1));
f.setLocation(420,200);
f.setSize(370,200);
f.setBackground(new Color(204,204,255));
Panel p1 = new Panel(new BorderLayout());
Panel p2 = new Panel(new BorderLayout());
Panel p11 = new Panel(new GridLayout(2,1));
Panel p21 = new Panel(new GridLayout(2,2));
p1.add(new Button("BUTTON"),BorderLayout.WEST);
p1.add(new Button("BUTTON"),BorderLayout.EAST);
p11.add(new Button("BUTTON"));
p11.add(new Button("BUTTON"));
p1.add(p11,BorderLayout.CENTER);
p2.add(new Button("BUTTON"),BorderLayout.WEST);
p2.add(new Button("BUTTON"),BorderLayout.EAST);
for(int i =1;i<=4;i++) {p21.add(new Button("BUTTON"));}
p2.add(p21,BorderLayout.CENTER);
f.add(p1);f.add(p2);
f.setVisible(true);
}
static void GridLayout1()//把空间划分成有规则矩形的网络小格子
{
Frame f = new Frame("GridLayout Example");
f.setLocation(50, 200);//移到新位置//从Component继承的
Button b1 = new Button("b1");
Button b2 = new Button("b2");
Button b3 = new Button("b3");
Button b4 = new Button("b4");
Button b5 = new Button("b5");
Button b6 = new Button("b6");
f.setLayout (new GridLayout(3,2));//设置布局是3行2列
f.add(b1);
f.add(b2);
f.add(b3);
f.add(b4);
f.add(b5);
f.add(b6);
f.setSize(370,200);//调整大小//window类继承的
// f.pack(); //自动设置大小,这样就不用 setSize手动设置大小了
f.setVisible(true);//把上面的所有设置的结果 显示出来//Window 类继承
}
static void BorderLayout1()//东南西北中 五个方向的布局
{
Frame f;
f = new Frame("Border Layout");
f.setLocation(50, 400);//移到新位置//从Component继承的
Button bn = new Button("北");
Button bs = new Button("南");
Button bw = new Button("西");
Button be = new Button("东");
Button bc = new Button("中");
f.add(bn, "North");
f.add(bs, "South");
f.add(bw, "West");
f.add(be, "East");//将指定组件添加到指定的区域
f.add(bc, "Center");
// 也可使用下述语句
/*
f.add(bn, BorderLayout.NORTH);//一般用下面这种,不容易写错
f.add(bs, BorderLayout.SOUTH);
f.add(bw, BorderLayout.WEST);
f.add(be, BorderLayout.EAST);
f.add(bc, BorderLayout.CENTER);
*/
f.setSize(370,200);//调整大小//window类继承的
f.setVisible(true);//把上面的所有设置的结果 显示出来//Window 类继承
}
static void FlowLayout1()//逐行定位.从左到右从上到下
{
Frame f = new Frame("Flow Layout");
f.setBackground( Color.lightGray);//设置背景色//Component类继承
f.setLocation(420, 400);//移到新位置//从Component继承的
Button button1 = new Button("第一个按钮");
Button button2 = new Button("第二个按钮");
Button button3 = new Button("第三个按钮");
Button button4 = new Button("第四个按钮");
Button button5 = new Button("第五个按钮");
Button button6 = new Button("第六个按钮");
//setLayout是Container类继承
//设置此容器的布局管理器
f.setLayout(new FlowLayout(FlowLayout.LEFT));//默认是居中.设置为左对其
f.add(button1);
f.add(button2);//将指定组件追加到此容器的尾部
f.add(button3);
f.add(button4);
f.add(button5);
f.add(button6);
f.setSize(370,200);//调整大小//window类继承的
f.setVisible(true);//把上面的所有设置的结果 显示出来//Window 类继承
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -