Java程序设计课件(高晓黎)第7篇AWT支持下的GUI编程.ppt

Java程序设计课件(高晓黎)第7篇AWT支持下的GUI编程.ppt

本章知识重点 本章知识难点 GUI与AWT GUI与AWT GUI与AWT AWT的容器组件 组件不能直接在程序运行界面中显示,必须放置在容器(Container) 组件内才能呈现出来。Container继承自Component类,因而容器自身首先也是一种组件,具有其他组件的共同特性;其次容器是一种特殊的组件,其特殊性在于容器的功能是用来容纳一般的组件对象与容器组件对象的,即容器除提供给其他组件作为安置场所外,其自身还可相互嵌套。 AWT的容器组件 容器作为特殊的组件,具有以下特征: ⑴容器有一定的空间范围与尺寸,容器一般是矩形的,有些组件可以显示出边界外框。 ⑵容器有一定的位置坐标,该位置既可以显示器的绝对位置表达,也可以相对于其他容器边界的相对位置表达。 ⑶容器一般可以设定自己的背景颜色,还可对背景色设置透明度,并可将一幅图案加载到容器上作为特定背景。 ⑷加载到容器内的GUI界面元素随着容器的打开与显示而同步显示;当容器隐藏或关闭时,这些界面元素也跟随着被隐藏或关闭。 ⑸容器组件可以相互嵌套,即可将一个或多具容器对象放置到其他容器对象中,从而构建更为丰富的界面层次结构。 (6)Window,Frame及Dialog是唯一有资格作为顶级容器窗口的三类组件。所谓顶级容器,就是能够直接加载到桌面,由桌面管理系统来管理,而不需要放置在任何其他容器对象内,并且能够作为其他容器属主的容器组件。 窗口容器组件Window Window类为Frame类与Dialog类的基类,由它生成的Window对象称为窗口。Window对象不拥有边框与菜单栏,在创建Window对象时,必须指明它的属主 (owner) 对象;能用作窗口属主的组件只能为顶级容器window、frame及dialog。用户编程时很少直接使用Window类对象作为程序的界面窗口,通常会使用该类的Frame子类生成应用窗口。 框架容器组件Frame 框架组件Frame是AWT应用程序最常使用的基本容器窗口之一,Frame对象可以带有边框、标题栏、菜单栏与窗口缩放功能按钮(包括窗口最大化、最小化及关闭三个按钮)。Frame类提供了大量的方法来完成窗口对象的生成与设置。表7.3列出了Frame类的部分常用方法(由Window类继承来的方法一般不再重复列出)。 框架容器组件Frame 【例】创建一个标题为Frame Usage Demo-1,背景色为蓝色,大小为300×200的框架窗口。 运行效果如下: 框架容器组件Frame import java.awt.*; //导入AWT包的所有组件类 public class Exa_7_1{ //定义用户类 public static void main(String[] args) { Frame myFrame=new Frame(); //调用无参构造方法创建窗口对象 myFrame.setTitle(Frame Usage Demo-1); //调用setTitle()方法设置窗口标题 myFrame.setSize(300,200); //调用setSize()方法设置窗口尺寸 myFrame.setBackground(Color.BLUE); //设置窗口背景色 myFrame.setVisible(true); //setVisible()方法设置窗口为可见 } } 框架容器组件Frame 对话框容器组件Dialog Window类另一个重要的子类Dialog,常用来显示一个弹出式的信息窗口;该窗口具有标题与边框,一般没有菜单条与工具栏,窗口位置能够移动,却不支持尺寸的缩放。 对话框容器组件Dialog Frame组件能够独立地作为应用程序的顶级窗口,为应用提供主界面;而Dialog组件则往往在主窗口已经存在的基础上,弹出一个临时窗口,充当着人机交互操作的辅助窗口,用来显示附加的信息,或接受用户输入的信息。 对话框容器组件Dialog Dialog具有非模态(modeless) 与模态(modal)两种类型。默认情况下为非模态模式。非模态对话框在处于活动状态时,它不阻塞其他窗口(包括owner窗口)的活动,它和其他窗口可以交替进行各自的操作,即非模态对话框以相容的策略与其他窗口“和平共处,相互配合”。模态对话框则以互斥的策略独占系统资源,限制其他窗口的活动;在自身显示时,禁止用户操作其他窗口,直至自己关闭,其他窗口才有机会被从阻塞状态中恢复活动窗口的特征。 对话框容器组件Dialog 【例】创建一个模态对话框. 程序的运行结果见图 对话框容

文档评论(0)

1亿VIP精品文档

相关文档