GUI类可以分为3类:
1.container class :用来包含其他组件,像JFrame,JApplet(可以形象地用窗口包含其他组件来比喻)
2.helper class:用来描述和修改组件的参数,像图形环境,颜色,字体等等
3.component class:在container里面的一些组件,像按钮button,菜单Jmenu等等
container类的方法:
1.add():把组件添加到容器内
2.removeALL():移除容器类所有组件
3.remove(component a):移除组件a
4.validate():当添加和删除组件时候使用,以避免bug
5.add(component a):添加组件a
下面介绍4个最常见的组件
1.JFrame 2.JApplet 3.JComponent 4.JDialog
----------------------
--------JFrame class的方法
Jframe():创建无标题的新窗口
JFrame(String s):创建标题为s的新窗口
public void setBounds(int a ,int b,int width,int height)--
(a,b)表示离左上角(0,0)距离的屏幕的坐标位置
width表示窗口的宽,height表示窗口的高
public void setSize(int width,int height)--
--------------------------
frame的布局
1.Java.awt包的布局
FlowLayout,BorderLayout,GardLayout,GridLayout
2.java.swing.border包中的布局
BoxLayout
---------------------------
container的布局方法
setLayout(布局对象); eg:setLayout(new FlowLayout());
--------------------------
一:FlowLayout
组件按照加入的先后顺序从左向友排列,一行排满之后就转
到下一行再按照从左向右的方式排列
FlowLayout的方法:
void setHgap(int hgap);//设置组件高度间隔
void setVgap(int vgap);//设置组件宽度间隔
void setAlignment(int aligin)://设置布局的对齐方式
二:BorderLayout(window型容器的默认布局)
容器使用BorderLayout布局,那么容器空间简单地划分为东、西、南、北、中五个区域
每加入一个组件都应该指明把这个组件添加在哪个区域中,区域由BorderLayout中的静态常量CENTER、NORTH、SOUTH、WEST、EAST表示
BorderLayout的方法:
container.add(component c,BorderLayout.CENTER/NORTH/WEST/EAST/SOUTH);
三:CardLayout(可容纳多个组件,但只能一次显示一个)
JTabbedPane创建的对象是一个轻容器,称作选项卡窗格。
选项卡窗格的默认布局是CardLayout卡片式布局
CardLayout的方法:
JTabbedPane.add(String tip,component c);//tip 为提示文本
四:GridLayout
基本布局策略是把容器划分成若干行乘若干列的网格区域,组件就位于这些划分出来的小格中。
GridLayout的方法:
构造:GridLayout(int n,int m):把容器分为n行m列
五:BoxLayout
盒式容器的的默认布局是盒式布局,而且不允许更改盒式容器的布局
BoxLayout的方法:
可以得到一个不可见的水平Struct类型对象,称做水平支撑。该水平支撑的高度为0,宽度是width。
可以得到一个不可见的垂直Struct类型对象,称做垂直支撑。参数height决定垂直支撑的高度,垂直支撑的宽度为0。