第10讲 Java图形用户界面.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 Java图形用户界面 10.1Java图形用户界面概述 10.2常用组件(AWT) 10.3布局管理器 10.4Java事件处理机制 10.5Swing组件介绍 本章要点 掌握图形用户界面基本组件的使用方法 了解如何使用布局管理器对组件进行管理 掌握Java的事件处理机制 了解Swing组件的优点及使用 10.1 Java图形用户界面概述 图形用户界面(GUI,Graphical User Interface)是为应用程序提供一个图形化的界面,程序通过GUI与用户交互,GUI能使一个应用程序具有与众不同的“外观”与“感觉”。 Java基类(Java Foundation Classes,JFC)是关于GUI组件和服务的完整集合,主要由5个API构成:AWT、Swing、Java 2D、Drag and Drop、Accessibility 10.1.1 AWT和Swing 1. AWT AWT(Abstract Window Toolkit)是一个独立平台的窗口工具组件集,它依赖于对等组件(Peer),而对等组件是一个本地GUI组件,由AWT类管理。AWT的作用是给用户提供基本的界面组件,如按钮、列表框、菜单等。 AWT最初只包括与本地对等组件相关联的组件,称为重量组件(Heavyweight Component),这些组件在它们自己的本地不透明窗口中绘制,在改变其默认行为时,不可以为其扩展子类,此外,它们必须是矩形的,且不能有透明背景。 2. Swing Swing是建立在AWT基础之上的,它利用了AWT的底层组件,包括图形、颜色、字体、工具包和布局管理器等。使用AWT最好的部分来建立一个新的轻量组件集,而丢弃了AWT中有问题的重量组件部分。 通过引入新特性和丰富的功能,Swing提供了比AWT更全面的组件集合。Swing API是围绕实现AWT各个部分的API构建的,这保证了所有早期的AWT组件仍然可以使用。 10.1.2 组件和容器 容器(Container)是组件(Component)的抽象子类,在该类中允许装入其他的组件,要装入的组件也可以是容器,在这些窗口中还可以装入其他的组件,这样可以创建完整的层次结构。容器有助于在屏幕上布置GUI组件。最常用的容器是Panel和Frame。 10.2 常用组件(AWT) java.awt中的各个类 图形组件类的继承关系 10.2.1 按钮和标签 1.按钮(Button) 按钮由Button类创建,而Button类是由Component类直接扩展的。要想使Button可见,必须使用add方法将它们添加到一个容器中。 Button类的构造函数及常用方法如图所示。 例10.1 按钮组件 import java.applet.Applet; import java.awt.*; public class MyButtons extends Applet{ private Button button1,button2,button3; public void init() { button1=new Button(Click here); button2=new Button(Sorry, I do nothing); button3=new Button(); //add buttons add(button1); add(button2); add(button3); } } 例10.1程序运行的结果如图所示。 2.标签(Label) 标签使用Label类来创建,而Label类是从Component类直接扩展而来的。Label类的构造函数及常用方法 如图所示。 例10.2 标签控件 import java.applet.Applet; import java.awt.*; public class MyLabel extends Applet{ private Label label1,label2; public void init() { //create a Label without text label1=new Label(); //create a Label with a string argument label2=new Label(Label with text); //add labels to applet add(label1); add(label2); } } 例10.2程序的运行结果如图所示 在初始时刻标签也可以不必显示任何在

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档