GUI(图形用户界面)
GUI:Graphical User Interface(图形用户接口)。用图形的方式,来显示计算机操作的界面,这样更方便更直观。java为GUI提供的对象都存在Java.Awt和javax.Swing两个包中
CLI:Command line User Interface (命令行用户接口)就是常见的Dos命令行操作。需要记忆一些常用的命令,操作不直观。
AWT与Swing
java.Awt: Abstract Window ToolKit(抽象窗口工具包),需要调用本地系统方法实现功能。属于重量级控件。
javax.Swing:在AWT的基础上,建立的一套图形界面系统,其中提供了更多的组件,而且完全有Java实现。增强了移植性,属轻量级控件。
AWT工具包继承关系:
布局管理器
1、容器中的组件的排放方式,就是布局。
2、常见的布局管理器:
FlowLayout(流式布局管理器) 从左到右的顺序排列。Panel默认的布局管理器。
BorderLayout(边界布局管理器)东,南,西,北,中。Frame默认的布局管理器。
GridLayout(网格布局管理器)规则的矩阵
CardLayout(卡片布局管理器)选项卡
GridBagLayout(网格包布局管理器)非规则的矩阵
建立一个简单的窗体
1、Container常用子类:Window Panel(面板,不能单独存在。)
2、Window常用子类:Frame Dialog
3、简单的窗体创建过程:
Frame f = new Frame(“my window”);
f.setLayout(new FlowLayout());
f.setSize(500,400);//设置窗体大小
f.setLocation(300,200);//设置窗体出现在屏幕的位置
f.setVisible(true);
事件监听流程图
事件监听机制
1、确定事件源(容器或组件)
2、通过事件源对象的addXXXListener()方法将侦听器注册到该事件源上。
3、该方法中接收XXXListener的子类对象,或者XXXListener的子类XXXAdapter的子类对象。
4、一般用匿名内部类来表示。
5、在覆盖方法的时候,方法的参数一般是XXXEvent类型的变量接收。
6、事件触发后会把事件打包成对象传递给该变量。(其中包括事件源对象。通过getSource()或者,getComponent()获取。)