《用户图形界面》PPT课件.ppt
《《用户图形界面》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《用户图形界面》PPT课件.ppt(52页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、面向对象的程序设计第第9章章用户图形界面用户图形界面雷擎雷擎对外经济贸易大学信息学院对外经济贸易大学信息学院面向对象的程序设计对外经济贸易大学 雷擎content9.1Java图形技术介绍图形技术介绍9.2Applet基础基础9.3图形设计基础图形设计基础9.4Swing容器和组件容器和组件实验:用户图形界面实验:用户图形界面面向对象的程序设计对外经济贸易大学 雷擎9.1Java图形技术介绍图形技术介绍oJava实现用户图形界面的程序分为两大类。实现用户图形界面的程序分为两大类。nApplication程序:类似于程序:类似于C或其他高级编程或其他高级编程语言编写的程序,需要显式使用语言编写的
2、程序,需要显式使用java引擎启动。引擎启动。前几章的前几章的java程序都属于这一类。程序都属于这一类。nApplet程序,小程序:嵌入程序,小程序:嵌入Web网页的小程网页的小程序,通过浏览器激活执行。序,通过浏览器激活执行。面向对象的程序设计对外经济贸易大学 雷擎JFCoJavaFoundationClasses(Java基础类)基础类)的缩写的缩写o是关于是关于GUI组件和服务的完整集合组件和服务的完整集合o作为作为J2SE的一个有机部分,主要包含的一个有机部分,主要包含5个部个部分分nAWT、Java2D、Accessibility、Drag&Drop、Swing面向对象的程序设计对
3、外经济贸易大学 雷擎构建窗口程序库构建窗口程序库o跟踪跟踪JavaGUI的发展和演化,我们将发现的发展和演化,我们将发现3个主要的构建窗口程序库:个主要的构建窗口程序库:nAWTnSwingnSWT(StandardWidgetToolkit)n同时还有第同时还有第4个库:个库:JFace。其实,。其实,JFace不算不算一个真正的构建窗口程序库,而是在基于一个真正的构建窗口程序库,而是在基于SWT之上的一个抽象层。之上的一个抽象层。面向对象的程序设计对外经济贸易大学 雷擎9.1.1AWToAWT(AbstractWindowingToolkit),中文译为抽象窗口工具包,是,中文译为抽象窗口
4、工具包,是Java提供提供的用来建立和设置的用来建立和设置Java的图形用户界面的的图形用户界面的基本工具。基本工具。oAWT由由Java中的中的java.awt包提供,里面包提供,里面包含了许多可用来建立与平台无关的图形用包含了许多可用来建立与平台无关的图形用户界面户界面(GUI)的类,这些类被称为组件的类,这些类被称为组件(components)。面向对象的程序设计对外经济贸易大学 雷擎oAWT是是Java的平台独立的窗口系统,图形的平台独立的窗口系统,图形和用户界面器件工具包。和用户界面器件工具包。oAWT是是Java基础类基础类(JFC)的一部分,为的一部分,为Java程序提供图形用户
5、界面程序提供图形用户界面(GUI)的标准的标准API。oAWT可用于可用于Java的的applet和和applications中。中。AWT的特点的特点面向对象的程序设计对外经济贸易大学 雷擎AWT组件组件o在在java.awt包里,包括包里,包括Button、Checkbox、Scrollbar等,都是等,都是Component类的子类类的子类o大部分含有大部分含有nativecode,所以随操作系,所以随操作系统平台的不同会显示出不同的样子,而不能统平台的不同会显示出不同的样子,而不能进行更改,是重量级组件进行更改,是重量级组件(heavyweightcomponents)o没有弹性、缺乏
6、效率没有弹性、缺乏效率面向对象的程序设计对外经济贸易大学 雷擎AWT支持支持GUI编程的功能编程的功能o用户界面组件用户界面组件o事件处理模型事件处理模型o图形和图像工具:包括形状、颜色和字体类图形和图像工具:包括形状、颜色和字体类o布局管理器:可以进行灵活的窗口布局而与布局管理器:可以进行灵活的窗口布局而与特定窗口的尺寸和屏幕分辨率无关特定窗口的尺寸和屏幕分辨率无关o数据传送类:可以通过本地平台的剪贴板来数据传送类:可以通过本地平台的剪贴板来进行剪切和粘贴进行剪切和粘贴面向对象的程序设计对外经济贸易大学 雷擎9.1.2Swing面向对象的程序设计对外经济贸易大学 雷擎Swing组件组件o其名
7、称都是在原来其名称都是在原来AWT组件名称前加上组件名称前加上J,例如,例如JButton、JCheckBox、JScrollbar等,都是等,都是JComponent类的子类类的子类oJava1.2推出,架构在推出,架构在AWT之上,是之上,是AWT的扩展的扩展而不是取代而不是取代o完全是由完全是由java语言编写的,其外观和功能不依赖于任语言编写的,其外观和功能不依赖于任何由宿主平台的窗口系统所提供的代码,是轻量级组件何由宿主平台的窗口系统所提供的代码,是轻量级组件(lightweightcomponents)o可提供更丰富的视觉感受,被越来越多地使用可提供更丰富的视觉感受,被越来越多地使
8、用面向对象的程序设计对外经济贸易大学 雷擎2.1.3SWT/JFaceoSWT/JFace直接调用了操作系统的图形库,直接调用了操作系统的图形库,从而使得从而使得Java应用程序的应用程序的Look&Feel与操作系统的习惯完全一致与操作系统的习惯完全一致o更为重要的是,更为重要的是,SWT/JFace采用有限调用采用有限调用本地方法(控件),只有当本地找不到所需本地方法(控件),只有当本地找不到所需要的控件时,才进行模拟。要的控件时,才进行模拟。oSWT/JFace的缺点主要在于两点:的缺点主要在于两点:(1)不不是是Java语言标准;语言标准;(2)某些平台并不支持。某些平台并不支持。面向
9、对象的程序设计对外经济贸易大学 雷擎9.2Applet基础基础oJavaAppletn一种嵌入一种嵌入HTML文档中的文档中的Java程序程序n与与Application相比,相比,Applet具有明显的优点具有明显的优点oweb浏览器提供了运行浏览器提供了运行Applet所需要的许多功能所需要的许多功能oApplet是在运行时通过网络从服务器端下载的,因而便于是在运行时通过网络从服务器端下载的,因而便于软件的发布和及时更新软件的发布和及时更新nApplet也有其局限性,也有其局限性,o不能在客户机上读写当地文件不能在客户机上读写当地文件o也不能连接除它所在的服务器以外的其它机器也不能连接除它
10、所在的服务器以外的其它机器面向对象的程序设计对外经济贸易大学 雷擎9.2.1Applet的工作原理的工作原理oApplet是一种是一种Java的小程序,都由的小程序,都由Java类库中的类库中的java.apple包中包中Applet类继承类继承而来。而来。o可以通过可以通过java开发工具的开发工具的appletviewer来运行。来运行。Applet程序离不开使用它的程序离不开使用它的HTML文件。文件。oApplet在网页的在网页的HTML代码中使用代码中使用和和标记来标识。标记来标识。面向对象的程序设计对外经济贸易大学 雷擎HTML文件中关于文件中关于Applet的信息的信息o这个这个
11、HTML文件中关于文件中关于Applet的信息至少的信息至少应包含以下三点:应包含以下三点:n字节码文件名字节码文件名(编译后的编译后的Java文件,以文件,以.class为后缀为后缀)n字节码文件的地址字节码文件的地址n在网页上显示在网页上显示Applet的方式。的方式。面向对象的程序设计对外经济贸易大学 雷擎AppletImportjava.awt.*;importjava.applet.*;publicclassThisClassextendsApplet/classbodyCaseStudy:Applet1.java面向对象的程序设计对外经济贸易大学 雷擎Web页的页的Applet标记
12、标记CaseStudy:Applet1.html面向对象的程序设计对外经济贸易大学 雷擎9.2.2Applet程序开发步骤程序开发步骤oapplet程序开发主要步骤如下:程序开发主要步骤如下:n选用选用EDIT或或WindowsNotepad等编辑工具等编辑工具作为编辑器建立作为编辑器建立Javaapplet源程序。源程序。n把把Applet的源程序转换为字节码文件。的源程序转换为字节码文件。n编制使用编制使用class的的HTML文件。在文件。在HTML文件文件内放入必要的内放入必要的语句。语句。面向对象的程序设计对外经济贸易大学 雷擎创建创建applet源程序文件源程序文件importja
13、va.applet.Applet;importjava.awt.Graphics;publicclassHelloWorldAppletextendsApplet/继承继承Appelet类,这是类,这是AppeletJava程序的特点程序的特点publicvoidpaint(Graphicsg)g.drawString(HelloWorld!,5,35);面向对象的程序设计对外经济贸易大学 雷擎创建创建HTML文件文件HelloWorld!Applet面向对象的程序设计对外经济贸易大学 雷擎9.2.3Applet执行方式执行方式o一个一个JavaApplication必须含有一个必须含有一个m
14、ain()方法,作为应用程序执行入口点。方法,作为应用程序执行入口点。o由于一个网页在浏览器中显示时可能会发生由于一个网页在浏览器中显示时可能会发生各种情况,对于每种情况,各种情况,对于每种情况,applet都必须都必须作出响应,所以,针对每种情况,作出响应,所以,针对每种情况,Applet类都有一个响应的入口点,使之运行。类都有一个响应的入口点,使之运行。面向对象的程序设计对外经济贸易大学 雷擎Applet实现以及生命周期实现以及生命周期oapplet都继承自类。都继承自类。o每个每个applet都有一个主程序类都有一个主程序类,之前必须之前必须加上加上public。oapplet将覆盖一个
15、或者多个方法以实现它将覆盖一个或者多个方法以实现它的行为。的行为。o类类Applet定义了当定义了当applet生命周期里的主生命周期里的主要事件发生时要事件发生时java系统调用的过程系统调用的过程面向对象的程序设计对外经济贸易大学 雷擎Applet类的主要方法类的主要方法publicvoidinit()publicvoiddestroy()publicvoidstart()publicvoidstop()publicvoidpaint(Graphicsg)面向对象的程序设计对外经济贸易大学 雷擎applet生命周期图示生命周期图示oApplet类提供了四个主要的方法:类提供了四个主要的方法
16、:init、start、stop和和destroy,它们构成了创,它们构成了创建任何建任何Applet的框架,并实现了一个的框架,并实现了一个Applet从诞生、执行到停止、消亡的生命从诞生、执行到停止、消亡的生命周期周期面向对象的程序设计对外经济贸易大学 雷擎生命周期方法生命周期方法oinit()每次每次applet被载入时被载入时ostart()当当applet被载入后或者用户重新访问被载入后或者用户重新访问包含小应用程序的页面时包含小应用程序的页面时(刷新,返回刷新,返回)ostop()当当applet离开离开applet所在的页面时所在的页面时或者退出浏览器时或者退出浏览器时odest
17、roy()进行最后的清理工作进行最后的清理工作CaseStudy:Applet2.java面向对象的程序设计对外经济贸易大学 雷擎9.3图形设计基础图形设计基础面向对象的程序设计对外经济贸易大学 雷擎9.3.1布局管理器布局管理器oJava的的GUI界面定义是由界面定义是由AWT类包和类包和Swing类包来完成的。它在布局管理上采类包来完成的。它在布局管理上采用了容器和布局管理分离的方案。用了容器和布局管理分离的方案。o对于布局的管理交给专门的布局管理器类对于布局的管理交给专门的布局管理器类(LayoutManager)来完成。来完成。面向对象的程序设计对外经济贸易大学 雷擎Java几个常用的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 用户图形界面 用户 图形界面 PPT 课件
限制150内