在整个AWT包中提供的所有工具类主要分为以下3种;
组件 Component
容器 Container
1.容器组件
JFrame 窗体类 最顶级的容器(默认布局为边框布局,不能自己互相添加) JPanel 面板类 最灵活的容器(可以自己互相添加)
2.元素组件
JLabel 标签类
JTextField 文本输入框类(可以设置框内字符、输入框长度)
JPasswordField 密码输入框类(框内字符会被特定字符代替)
JCheckBox 复选框类
JComboBox 下拉框类
JButton 按钮类
容器和组件都是swing包下的类。javax.swing.JFrame
基本容器 JFrame JFrame frame = new JFrame(); f.setSize(300,400) f.setVisible(true); 建立显示窗体
JLabel lab = new JLabel("显示标签"); f.add(lab); 在窗体中显示标签 JButton but = new JButton("按钮"); f.add(but); 在窗体中显示按钮 布局管理器 FlowLayout 流式布局管理器 f.setLayout(new FlowLayout(FlowLayout.CENTER,3,3); BorderLayout 将窗体表面化为东南西北中 f.setLayout(new BorderLAyout(3,3)); f.add(new JButton("东(east)"),BorderLayout.EAST); f.add(new JButton("西(west)"),BorderLayout.WEST); f.add(new JButton("北(north)"),BorderLayout.NORTH); f.add(new JButton("南(south)"),BorderLayout.SOUTH); f.add(new JButton("中(center)"),BorderLayout.CENTER); GridLayout 表格布局管理器 f.setLyout(new GridLayout(Height,width,3,3); 需要注意的事无论按钮多还是按钮少横轴是不会变的,都是竖轴在改变 CardLayout 将一组组件重叠地进行布局,每次只展示一个画面 通过card。next(cont); 进行下一个界面切换 绝对定位 提供一个坐标进行精准布局 f.setLayout(null); 使用绝对定位
组件
在整个AWT中,所有的组建类都是从Component和MenuComponent扩展而来的,这些类会继承这两个类的公共操作。
容器
所有的AWT组件都应该放到容器中,并可以设置其位置、大小等,所有的容器都是Component的子类
布局管理器
使用布局管理器可以使用容器中的组件按照指定的位置进行摆放,即使容器改变了大小,布局管理器也可以准确的把组件放到指定的位置,这样就可以有效的保证版面不会混乱。
Swing简介
Swing使用Java语言实现,是以AWT平台为基础构建起来的新组件,直接使用Swing可以更加轻松地构建用户界面。