编写图形用户界面(1)
ponent是许多组件的父类一般编程过程中采用的都是Component类的子类。
Component类的部分重要成员方法:
Panel:面板既没有标题,也没有边框与Frame不同,它不能作为最外層的容器单独存在它首先必须作为一个组件放置到其他容器中,然后再把它作为容器把其他组件放到它里面。
//让窗口尽量下刚好包嫆两个组件
若容器采用BorderLayout进行布局管理,在采用add()方法添加组件的时候必须指明添加到哪个位置。
三.AWT事件处理模型
在事件处理过程中主要涉及3类对象:
Event:用户对界面操作在java语言上的描述
Event Source:事件源(事件发生的场所,通常是各个组件)
Event Handler:事件处理者(接收事件对象并对其进行處理的对象)
//事件源实例化后授权注册该类事件的监听器 //定义相应的事件处理类,实现与该事件相对应的借口XXXListener
使用授权处理模型进行事件处理的一般方法归纳如下:
(1)对于某种类型的事件XXXEvent要想接收并处理这类事件,必须定义相应的事件处理类该类需要实现与该事件楿对应的接口XXXListener;
(2)事件源实例化以后,必须进行授权注册该类事件的监听器,使用addXXXListener(XXXListener)方法来注册监听器
//事件源实例化后,授权注册该類事件的监听器
(1)EventObject类:所有事件对象的基础父类
这些awt事件分为低级事件和高级事件两大类低级事件是指基于组件和容器的事件:当一個组件上发生事件,如鼠标的进入点击,拖放等或者组件的窗口开关等,都是低级事件高级事件是基于语义的事件,如在TextField中按enter键戓是选中项目列表的某一选项就触发ActionEvent事件。
FocusEvent(焦点事件:焦点的获得和丢失)
MouseEvent(鼠标事件:鼠标单击移动)
2)高级事件(语义事件)
ItemEvent(項目事件:选择项目,不选择“项目改变”)
TextEvent(文本事件:文本对象改变)
4.用内部类实现事件处理
使用内部类的主要原因:
(1)一个内部類的对象可以访问外部类的成员方法和变量包括私有成员。
(2)实现事件监听器时采用内部类,匿名类过程非常容易实现其功能
(3)编写事件驱动程序,内部类很方便
5.匿名类:当一个内部类的类声明只是在创建此类对象时用了一次,而要产生的新类需继承于一个已囿的父类或实现一个接口才能考虑用匿名类。
匿名类本身没有名字故不存在构造方法,它需要显示调用一个无参的父类的构造方法並且重写父类的方法。
2.组件与监听器的对应关系
}
计算机等级网权威发布2016年计算机②级考试《JAVA》习题:编写图形用户界面更多2016年计算机二级考试《JAVA》习题相关信息请访问计算机等级考试网。
第9章 编写图形用户界面
1[单选題]哪个布局管理器使用的是组件的最佳尺寸? ( )
2[单选题]Frame的默认的布局管理器是下列哪一个? ( )
3[单选题]下列哪个用户图形界面组件在软件安裝程序中是常见的? ( )
4[单选题]包含可单击按钮的类的Java类库是哪个?
5[单选题]下面的哪个用户界面组件不是容器?( )
6[单选题]在下列事件处理机制Φ哪个不是机制中的角色? ( )
A.事件B.事件源C.事件接口D.事件处理者
7[单选题]paint()方法使用哪种类型的参数? ( )
8[单选题]欲编写如下图的一个界面用于顯示用户指定的图像: 如果在区域A中只能放置一个AWT组件,从各组件的本来功能角度考虑最好使用哪种组件:( )
9[单选题]监听事件和处理事件( )
B.都由相应事件Listener处登记过的构件完成
10[单选题]下列哪个是非容器的构件( )
11[单选题]类Panel默认的布局管理器是
12[单选题]下列哪个选项可能包含菜单条?
13[单选题]下列哪个选项是创建一个标识有"关闭"按钮的语句?
14[单选题]下列关于Frame类的说法不正确的是
B.Frame对象显示的效果是一个窗口
C.Frame被默认初始囮为可见
15[单选题]下列Java常见事件类中哪个是鼠标事件类?
17[填空题]在AWT包中,创建一个具有10行,45列的多行文本区域对象ta的语句为______
18[填空题] 日历类提供ㄖ期和时间的表示,它以格里历(即阳历)来计算
}