AWT事件模型总结

一、常用术语

GUIGraphics user interface)图形用户接口

CLI Command line user interface)命令行用户接口

JavaGUI提供的类。

java.awt (Abstract Window Toolkit)抽象工具包。重量级控件

javax.swing 轻量级控件

二、布局管理器

1FlowLayout,流式,从左到右,默认居中

2BorderLayout,边界,上北north,下南south,左西west,右东east,中心center。默认

3GridLayout ,网格,规则矩阵

4CardLayou 卡片布局

5GirdBagLayou 网格包,非规则矩阵

三、常用方法

类 Component常用方法:

显示:

void setVisible(boolean b) 

          根据参数 的值显示或隐藏此组件。 

  大小:  

 void setSize(Dimension d) 

          调整组件的大小,使其宽度为 d.width,高度为 d.height。 

   void setSize(int width, int height) 

          调整组件的大小,使其宽度为 width,高度为 height。 

  位置:

   void setLocation(int x, int y) 

          将组件移到新位置。 

  Window类:

  位置:

   void setBounds(int x, int y, int width, int height) 

          移动组件并调整其大小。 

          

四、事件监听机制

1、事件源

      能够产生事件的对象都可以成为事件源,如文本框,按钮等。也就是说,事件源必须是一个对象,

      而且这个对象必须是Java认为能够发生时间的对象。

2,监听器(Listener

      需要一个对象对事件源进行监视,以便对发生的事件作出处理。

例如:对于文本框,这个方法为:addActionListener(监视器);

3,处理事件的接口

      监视器负责处理事件源发生的事件。为了让监视器这个对象能对事件源发生的事件进行处理,

      创建该监视器对象的类必须申明实现相应的接口,即必须在类体中给出该接口中的所有方法体,

      那么当事件源发生事件时,监视器就自动调用类实现的某个接口方法。

五、新旧事件模型的两个主要区别?

AWT事件模型总结_第1张图片

六、AWT事件类的继承关系图?

AWT事件模型总结_第2张图片

七、下面是java.awt.event包中的14个监听器接口.

ActionListener         MouseListener

AdjustmentListener  MouseMotionListener

ComponentListener   MouserWheelListener

ContainerListnener   TextListener

FocusListener          WindowListener

ItenListener            WindowFocusListener

KeyListener             WindowStateListener

下面是这些适配器类的列表:

ComponentAdapter   MouseAdapter

ContainerAdapter     MouserMotionAdapter

FocusAdapter          WindowAdapter

KeyAdapter

 

九、AWT的语义事件和低层事件?

语义事件是用于表达用户动作的事件。

低层事件是这些成为可能的事件。

java.awt.event包中有四个语义事件类:

ActionEvent(对应按钮点击,菜单选择,选择列表项或者在这个文本域中输入ENTER)

AdjustmentEvent(用户调整一个滚动条)

ItemEvent(用户从一组选择框或者列表框中选择一个)

TextEvent(文本域或者文本框内容发生改变). 

十、有六个低层事件类:

ComponentEvent(组件被缩放,移动,显示或者隐藏,它是所有低层事件类的基类)

KeyEvent(一个键按下或者释放)

MouseEvent(鼠标键被按下,释放,鼠标移动或者拖动)

MouseWheelEvent(鼠标轮被滚动)

FocusEvent(组件得到焦点或者失去焦点)

WindowEvent(窗口被激活,减活,图标化,还原或者关闭,窗口状态改变)

ContainerEvent(添加或者删除一个组件)

PS:语义事件就是能达成用户一个目的的事件。

比如:象KeyEvent(一个键按下或者释放),这个键按下是干什么用的?

释放是干什么用的?无法表达出这个事件的目的性,所以KeyEvent不是语义事件。

KeyPressed,KeyTyped,KeyReleased三者之间的关系?


十一、如何计算鼠标的点击数目?


你可能感兴趣的:(awt,事件模型)