您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 2MyEclipse 6 第十八章 图形界面开发--AWT,Swing,SWT
MyEclipse6Java开发中文教程1刘长炯著第十八章图形界面开发--AWT,Swing,SWT第十八章图形界面开发--AWT,Swing,SWT.............................................................118.1图形界面简介.....................................................................................................118.1.1概述.........................................................................................................218.1.2Java的GUI类库发展简介..........................................................................318.1.3标准图形界面的组成................................................................................418.1.4常见的可视化界面开发软件.....................................................................518.2Applet开发..........................................................................................................618.2.1Applet的HelloWorld开发...........................................................................618.2.2Applet的运行方式.....................................................................................718.2.3Applet的生命周期...................................................................................1318.2.4Applet安全限制和签名Applet..................................................................1518.2.5Applet参数传递和JavaScript互操作........................................................1918.2.6从JDK的自带例子中学习Applet和图形界面编程....................................2918.3使用Matisse4MyEclipse开发AWT/Swing应用..................................................3018.3.1安装开发插件........................................................................................3018.3.2可视化开发Applet..................................................................................3018.3.3调整生成代码和换肤..............................................................................3918.3.4开发UDP局域网聊天桌面应用...............................................................4118.3.5发布应用、启动文件制作........................................................................5218.4使用Jigloo插件开发SWT/Swing应用...............................................................5918.4.1Jigloo插件的下载安装............................................................................5918.4.2搭建SWT开发环境.................................................................................6018.4.3使用Jigloo开发SWT应用.......................................................................6518.4.4Jigloo开发SWT的常见问题....................................................................6918.4.5Jigloo开发Swing应用..........................................................................7118.5参考资料..........................................................................................................7318.5.1网址.......................................................................................................7318.5.2Java应用播放声音的代码示例................................................................7418.5.3JavaScript包的英文参考文档................................................................7816.5.4Eclipse中插件的安装..............................................................................8318.6小结.................................................................................................................8418.1图形界面简介本节简要讨论图形界面,由于定位是开发为主,所以理论之处的讲解并不多,希望读者理解,并自行寻找更多资料补充自学。另外提示,对图形界面无兴趣,或者工作根本用不到MyEclipse6Java开发中文教程2刘长炯著的读者,完全可以忽略本章的内容。18.1.1概述在本书刚开始计划写的时候,选的书名是《MyEclipse6JavaEE开发中文手册》,后来才改成了现在的这个名字:《MyEclipse6Java开发中文教程》。这是因为Java的覆盖面要比JavaEE大些,Java的开发也不是除了做做网页(一般加以专业称呼为JavaEE开发),而且考虑到实际情况,在一般公司中经常出现维护老项目的现象,如果是在校学子做毕业设计,也会用到一些目前来说不是太“主流”的技术,在Java中,经常就是指图形界面开发。那么图形界面开发到底在实际中有没有用?回答是肯定的:有!大家想想,打开Windows后看到的是什么?窗口!那就对了,所有这些都是图形界面应用。IE浏览器本身,也是个带界面,能够用鼠标键盘操作的图形应用。至于游戏,那就是专门主攻图形学的带界面应用。绝对上讲,没有界面的应用是不存在的。界面是电脑和人脑沟通的窗口。类似于DOS,Linux那样的命令行的,叫文字界面。其它所有带有窗口,一般支持鼠标,键盘,手柄等的,都属于图形界面。至于Java的开发,所用到的开发工具,例如JBuilder,Eclipse,MyEclipse,Netbeans,无一不是图形界面的应用。但是长期以来,由于种种原因(我想其中昀重要的原因大概是速度,内存占用和系统集成度),图形界面一直没能成为Java开发的主流,尤其在国内,做JSP成了Java开发的代名词,但是国外的情况好很多,出现了很多基于Swing的优秀软件。我想国内的电脑普遍配置过低也是个很重要的因素。但是,这并不影响Java图形界面的应用广度,很多项目,尤其是比较综合的项目,都还是用到了图形界面的开发,例如Applet技术,客户端软件,以及昀近非常流行的Eclipse下的SWT/JFace/RCP(RichClientPlatform,富用户客户端平台)软件开发,它们都是图形界面的软件。而且,在公司,很多老项目,可能是用Applet搭建,或者是完全用Swing实现的,这时候,您都不得不维护它,因为客户用习惯了一样东西后,是很难再做改变的,例如笔者此前就职的那家外企,就有大量的Swing应用。至于做算法的,一般也都会和一些界面结合起来,制作一些Demo应用。如果是图形相关的,那更是100%要做界面了,虽然Java中的图形算法由于虚拟机本身的原因执行效率低一些。Java中的图形界面系统和JVM一样,也是分为四个层次(大致的划分,并未参考权威的资料):操作系统图形设备层虚拟机本地代码层Java封装层用户应用层。由于画图依赖操作系统的功能,所以,在一些服务器上,例如没有安装XWindows系统的Linux服务器,不能执行图形界面应用。又由于Java的图形界面采用了昀大公约数的做法,所以和底层的语言例如C++相比,其功能总是感觉少,例如托盘功能(桌面昀右下角的那部分区域),也是昀近才加入的(JDK1.6支持)。虚拟机本地代码层体现在大量的DLL文件上,例如jre/bin/awt.dll,就是Java的AWT类的C代码的封装,所有的键盘和鼠标操作,都通过它来进行(换句话说纯Java是做不到的)。使用微软的VC++中提供的一款工具DependencyWalker,可以看到其中的DLL中封装的函数列表,如图18.1所示。所以一般对Java访问系统级功能的操作,例如访问注册表,都需要额外使用C++代码来实现,一般也不跨平台,这也是Java的图形界面开发一直没能流行开来的一个原因,甚至于现在出现了Eclipse力挺的SWT,这样的局面还是依然不能结束。MyEclipse6Java开发中文教程3刘长炯著图18.1awt.dll中的本地方法列表18.1.2Java的GUI类库发展简介GUI,GraphicsUserInterface,就是图形用户界面的意思。Applet(中文常译作小应用程序),是1995年导致Java大火一把的主要原因。当年Sun推出了HotJava浏览器(当然,此款浏览器早已停止开发,代之以浏览器+Java插件),成为世界上首个支持跨平台的交互式应用的浏览器,虽然其后由于种种原因未能推广开来,但是它证明了Java的主要优点:跨平台,安全性等等,为以后在服务器端和手机应用大展旗鼓打下了基础。Applet不能访问本地文件系统,也不能任意访问网络,这是个优
本文标题:2MyEclipse 6 第十八章 图形界面开发--AWT,Swing,SWT
链接地址:https://www.777doc.com/doc-5445981 .html