GUI

GUI概述

GUI:Graphical User Interface(图形用户接口)
用图形的方式,来显示计算机操作的界面,这样更方便更直观。

CLI:Command line User Interface (命令行用户接口)
就是常见的Dos命令行操作,需要记忆一些常用的命令,操作不直观。

Java为GUI提供的对象都存在java.Awtjavax.Swing两个包中。

Awt和Swing

java.Awt:Abstract Window ToolKit (抽象窗口工具包),需要调用本地系统方法实现功能,属重量级控件。

javax.Swing:在AWT的基础上,建立的一套图形界面系统,其中提供了更多的组件,而且完全由Java实现。增强了移植性,属轻量级控件。

组件继承关系

组件继承关系图

Container:为容器,是一个特殊的组件,该组件中可以通过add 方法添加其他组件进来。

布局管理器

容器中的组件的排放方式,就是布局。

常见的布局管理器:

  1. FlowLayout(流式布局管理器)
    从左到右的顺序排列。
    Panel默认的布局管理器。
  2. BorderLayout(边界布局管理器)
    东,南,西,北,中
    Frame默认的布局管理器。
  3. GridLayout(网格布局管理器)
    规则的矩阵
  4. CardLayout(卡片布局管理器)
    选项卡
  5. GridBagLayout(网格包布局管理器)
    非规则的矩阵

建立一个简单的窗体

Container常用子类:Window Panel(面板, 不能单独存在)
Window常用子类:Frame Dialog

事件监听机制

时间监听机制的组成:
事件源(组件)
事件(Event)
监听器(Listener)
事件处理(引发事件后处理方式)

处理流程:

  1. 确定事件源(容器或组件)
  2. 通过事件源对象的addXXXListener()方法将侦听器注册到该事件源上
  3. 该方法中接收XXXListener的子类对象,或者XXXListener的子类XXXAdapter的子类对象(一般用匿名内部类表示
  4. 在覆盖方法的时候,方法的参数一般是XXXEvent类型的变量接收
  5. 事件触发后会把事件打包成对象传递给该变量。(其中包括 事件源对象。通过getSource()或者,getComponent()获取)
组件.addXXXListener(new XXXAdapter){
    public void methodName(XXXEvent e){}
}
事件监听机制流程图

例程

你可能感兴趣的:(GUI)