复习:
GUI :
1,窗口,窗体,只能看见窗口。
Frame
add(p,BorderLayout.North.South.east.West.Center)
2,容器,摆放 组件(按钮,图片。。。)
Panel 流动布局 FlowLayout
3,组件,
按钮
文字
单选
复选框
下拉框
图片
表格
滚动条
。。。
组件 放到 容器里 容器 放到窗口里。
【组件放到容器中什么位置?】-> 布局
Component 抽象类 组件
Container 容器
Window
Frame 窗口 Dialog 模态框 (弹框)
Frame:
setTitle("测试1");设置标题
setSize(new Dimension(100, 100));//设置窗口大小
//setSize(100, 100);//设置窗口大小
setLocation(300, 200);//设置窗口位置
setBounds(x,y,width,height);//设置x,y,大,小
setResizable(false);//设置不能被用户改变大小
setAlwaysOnTop(true);//设置窗口在最上方显示,窗口置顶
setVisible(true);//设置可见性
接下来由你们填充完成。
布局 : 考虑组件在容器中存放的位置。
默认 : 窗口 : BorderLayout
BorderLayout 把容器 分为 5部分
向窗口中添加组件的时候,可以设置添加到什么位置
this.add(p,Borderlayout.NORTH);//北
this.add(p,Borderlayout.SORTH);//南
this.add(p,Borderlayout.ESTH);//东
this.add(p,Borderlayout.WETH);//西
Centent;//中
: Panel : FlowLayout 流动布局
把组件按照添加的顺序放到容器中,不够自动换下行。
设置布局为null:
组件在容器中乱放,乱放在哪?不知道放在哪里,导致组件看不见。
组件需要设置位置,才能被看见。
1,setSize();
setLocation();
2,setBounds(x,y,w,h);
八. GridLayout网格布局管理器
GridLayout将容器分割成许多行和列,组件被填充到每个网格中。添加到容器中的组件首先放置在左上角的网格中,然后
从左到右放置其他组件,直至占满该行的所有网络,接着继续在下一行中从左到右放置组件。特性如下:
. 组件的相对位置不随区域的缩放而改变,但组件的大小会随之改变。组件始终占据网格的整个区域。
. GridLayout总是忽略组件的最佳大小,所有组件的宽度相同,高度也相同。
. 将组件用add()方法添加到容器中的先后顺序决定它们占据哪个网络。GridLayout从左到右、从上到下将组件填充到容器
的网格中。