如何进行Java GUI图形用户界面编程.doc

如何进行Java GUI图形用户界面编程.doc

ID:27726671

大小:32.00 KB

页数:3页

时间:2018-12-05

如何进行Java GUI图形用户界面编程.doc_第1页
如何进行Java GUI图形用户界面编程.doc_第2页
如何进行Java GUI图形用户界面编程.doc_第3页
资源描述:

《如何进行Java GUI图形用户界面编程.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、如何进行JavaGUI图形用户界面编程进行JavaGUI(GraphicalUserInterface,图形用户界面)编程,大家或许经常徘徊在SWT/JFACE,Swing,AWT之间选择,哪一个更合适自己?AWT作为Java语言的第一个GUI类库包,在这三者之间中年龄最长,可谓开国元勋;老二Swing,兼容AWT,同时又对AWT进行了改进,可谓站在前辈的肩膀上,自然就会看的远了;老三SWT/JFace,则只能用不走寻常路来形容它,SWT/JFace采取了与AWT和Swing完全不同的技术路线。这三剑客之间,究竟孰优孰劣,且听下文分解。1.穷途末路

2、的AWTAWT(AbstractWindowingToolkit),中文译为抽象窗口工具包,是Java提供的用来建立和设置Java的图形用户界面的基本工具。AWT由Java中的java.awt包提供,里面包含了许多可用来建立与平台无关的图形用户界面(GUI)的类,这些类被称为组件(components)。抽象窗口工具包(AbstractWindowingToolkit)(AWT)是Java的平台独立的窗口系统,图形和用户界面器件工具包。AWT是Java基础类(JFC)的一部分,为Java程序提供图形用户界面(GUI)的标准API。AWT提供了Jav

3、aApplet和JavaApplication中可用的用户图形界面GUI中的基本组件(components)。由于Java是一种独立于平的程序设计语言,但GUI却往往是依赖于特定平台的,Java采用了相应的技术使得AWT能提供给应用程序独立于机器平台的接口,这保证了同一程序的GUI在不同机器上运行具有类似的外观(不一定完全一致)。抽象窗口工具包AWT(AbstractWindowToolkit)是API为Java程序提供的建立图形用户界面GUI(GraphicsUserInterface)工具集,AWT可用于Java的applet和applicat

4、ions中。它支持图形用户界面编程的功能包括:用户界面组件;事件处理模型;图形和图像工具,包括形状、颜色和字体类;布局管理器,可以进行灵活的窗口布局而与特定窗口的尺寸和屏幕分辨率无关;数据传送类,可以通过本地平台的剪贴板来进行剪切和粘贴。然而,Java推出的时候,AWT作为Java最弱的组件受到不小的批评。最根本的缺点是AWT在原生的用户界面之上仅提供了一个非常薄的抽象层。例如,生成一个AWT的复选框会导致AWT直接调用下层原生例程来生成一个复选框。不幸的是,一个Windows平台上的复选框同MacOS平台或者各种UNIX风格平台上的复选框并不是那

5、么相同。这种糟糕的设计选择使得那些拥护Java“一次编写,到处运行(writeonce,runanywhere)”信条的程序员们过得并不舒畅,因为AWT并不能保证他们的应用在各种平台上表现得有多相似。一个AWT应用可能在Windows上表现很好,可是到了Macintosh上几乎不能使用,或者正好相反。在90年代,程序员中流传着一个笑话:Java的真正信条是“一次编写,到处测试(writeonce,testeverywhere)”。导致这种糟糕局面的一个可能原因据说是AWT从概念产生到完成实现只用了一个月。在第二版的Java开发包中,AWT的器件很大

6、程度上被Swing工具包替代。Swing通过自己绘制器件而避免了AWT的种种弊端。Swing调用本地图形子系统中的底层例程,而不是依赖操作系统的高层用户界面模块。Swing的出现,宣告了AWT的穷途末路,目前几乎看不到AWT在GUI上的应用了。2.Swing——想说爱你不容易JavaSwing是JavaFoundationClasses(JFC)的一部分,它是试图解决AWT缺点的一个尝试。从这一点上来说,Swing可以说是站在前人(以AWT的表现,实在很难称之为巨人)的肩膀上了。SWING解决了AWT的很多缺点。相对于AWT,Swing是轻量级元件

7、。SWING提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的观感和主题(各种操作系统默认的特有主题),然而Swing不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意观感。轻量级元件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。在Swing中,Sun开发了一个经过仔细设计的、灵活而强大的GUI工具包。其中大量应用了MVC模式,这大大增加了Swing的灵活性。笔者曾经做过一个

8、大型的大型C/M/S(Client/Middleware/Server)项目,其中客户端UI采用的就是Swing,可以说,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。