Java的AWT

AWTJava中支持图形化用户界面GUI设计的一个工具集。AWTAPI是独立于平台的,但设计出来的界面在各种平台的风格不同,利用API中各种类在特定平台下的对等组件peers提供具体平台下的实现。

欲建立一个GUI首先确定所用的组件及其布局,然后实现其事件的响应。组件的类型有多种,如常用的ButtonCheckBox等,均为ComponentMenuComponent类的子类,这些组件不能独立使用,必须放置于某个容器中。

容器本身也是一个组件,可以容纳多个组件,使它们成为一个整体,容器之间可以嵌套。常用的容器有FramePanelApplet等。其中Frame一般作为顶级窗口使用,而Panel则必须放在Window或者Frame中。

为了使得组件在容器中的摆放、布局有序,须使用布局管理器,Java提供了FlowLayoutBorderLayoutGridLayoutCardLayoutGridBagLayout这五种布局管理器,以实现不同风格的组件布局。其中FlowLayoutFrameApplet中默认的布局管理,CardLayout可以使得组件像卡片般叠放,且可以进行卡片切换。欲使用某种布局管理器时,须用setLayout设置容器的布局管理器为该类型。

当界面做好之后,组件的事件响应才是GUI设计与实现的核心。其过程为:当用户在界面上作出某种动作时,监测GUI的操作系统将发生的事件传送给GUI应用程序,程序则根据事件做出反应。AWT的事件处理模型为:事件源(组件)产生事件EVENT)交由事件处理器处理。目前的事件处理机制为委托方式(监听方式),即事件源(组件)注册了一个或者多个包含事件处理器的对象(监听器),当事件产生时组件将事件发送给监听器,由其对事件进行相应的处理。

其过程为:定义监听器、注册监听器。一个对象通过实现多种接口可以监听多种事件,也可以通过匿名类、内部类实现多个监听器。由于在定义监听器时利用适配器可以简化程序,但同时又限制了对其它类的继承,这时可以通过在类的内部定义监听类来实现多个监听器的动作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值