这一周,我们主要学习了在上周处理的事件处理遗留问题和Swing用户界面组件的基本知识。
在事件处理方面,老师重点讲解了事件处理中很重要的监听器,对于指定事件监听器,我们有三种方案,第一,定义一个类并构造这个类的几个所需对象,第二,使用匿名内部类,第三,使l用lambda表达式。当生成监听器对象后,需要将监听器对象与组件元素联系起来,就需使用addActionListener方法进行注册。除此之外,老师还讲解了适配器类,在事件处理中,书写几个没有任何操作的方法代码显然是一种乏味的工作,为了简化,每个含有多个方法AWT监听器接口都配有一个适配器类,这个类实现了接口中的所有方法,但每个方法没有做任何事情。
在Swing用户界面组件方面,老师讲解了Swing框架中最具影响力的模式是“模型-视图-控制器”模式,即MVC模式。模型-视图-控制器模式并不是AWT和Swing设计中使用的唯一模式,还有几种模式如下:1)容器和组件是“组合”模式 2)带滚动条的面板是“装饰器”模式 3)布局管理器是“策略”模式。老师还讲解了布局管理,布局管理器是一组类,它实现了java.AWT.LayoutManager接口,还决定容器中组件的位置和大小;布局管理器主要包括5类,但我们主要要掌握的有三类,即流布局管理器(flow layout manager)、边框布局管理器(border layout manager)、网格布局(grid layout manager)。
其实,在自己调试代码的过程中,我们学到了很多用户界面中的知识,像单选框、复选框、滚动条等等。可是,有很多代码不太理解,自己也不能离开书本。