本书包括了JFC Swing API和Java 2平台的最新修改。在本书中,作者与Sun Microsystems公司的Swing部门紧密合作,详尽介绍了如何使用Swing组件创建GUI。本书是面向任务而编写的,并且提供了大量的示例。它将使读者创建不需要经过修改就可以在多个平台下运行,并且外观和性能甚至优于本机环境的用户界面程序。通过对Java 2平台最新版本的全面介绍,作者在本书中为创建GUI程序提供了新鲜内容。对于希望创建功能强大、稳定的GUI的初学者或经验丰富的Java开发人员来说,本书是一个不可或缺的教材和参考。 \r\n \r\n
第1章 Swing入门\r\n 1.1 关于JFC和Swing\r\n 1.2 编译和运行Swing程序\r\n 1.3 问题与练习\r\n 1.4 示例程序\r\n第2章 按示例学习Swing\r\n 2.1 示例1:你的第一个Swing程序\r\n 2.2 示例2:SwingApplication\r\n 2.3 示例3:CelsiusConverter\r\n 2.4 示例4:改进后的CelsiusConverter\r\n 2.5 示例5:LunarPhases\r\n 2.6 示例6:VoteDialog\r\n 2.7 小结\r\n 2.8 问题与练习\r\n 2.9 示例程序\r\n第3章 使用Swing组件\r\n 3.1 Swing组件的可视化索引\r\n 3.2 在Swing组件中使用HTML\r\n 3.3 使用顶层容器\r\n 3.4 使用模型\r\n 3.5 JComponent类\r\n 3.6 使用文本组件\r\n 3.7 小结\r\n 3.8 问题与练习\r\n 3.9 示例程序\r\n第4章 在容器中放置组件\r\n 4.1 布局管理的可视化指南\r\n 4.2 使用布局管理器\r\n 4.3 布局管理器的工作原理\r\n 4.4 创建一个自定义布局管理器\r\n 4.5 不使用布局管理器(绝对定位)\r\n 4.6 小结\r\n 4.7 问题与答案\r\n 4.8 示例程序\r\n第5章 编写事件侦听器\r\n 5.1 事件处理的部分示例\r\n 5.2 编写事件侦听器的常规信息\r\n 5.3 Swing组件支持的侦听器\r\n 5.4 侦听器API表\r\n 5.5 小结\r\n 5.6 问题与练习\r\n 5.7 示例程序\r\n第6章 执行自定义绘制\r\n 6.1 Swing组件是如何显示的\r\n 6.2 绘制概念的介绍\r\n 6.3 实现一个自定义组件\r\n 6.4 小结\r\n 6.5 问题与练习\r\n 6.6 示例程序\r\n第7章 组件参考\r\n 7.1 如何创建Applet\r\n 7.2 如何使用按钮\r\n 7.3 如何使用复选框\r\n 7.4 如何使用颜色选择器\r\n 7.5 如何使用组合框\r\n 7.6 如何使用对话框\r\n 7.7 如何使用编辑器窗格和文本窗格\r\n 7.8 如何使用文件选择器\r\n 7.9 如何使用格式化文本框\r\n 7.10 如何创建帧(主窗口)\r\n 7.11 如何使用内部帧\r\n 7.12 如何使用标签\r\n 7.13 如何使用分层窗格\r\n 7.14 如何使用列表\r\n 7.15 如何使用菜单\r\n 7.16 如何使用面板\r\n 7.17 如何使用密码框\r\n 7.18 如何使用进度条\r\n 7.19 如何使用单选按钮\r\n 7.20 如何使用根窗格\r\n 7.21 如何使用滚动窗格\r\n 7.22 如何使用分隔符\r\n 7.23 如何使用滑块组件\r\n 7.24 如何使用微调组件\r\n 7.25 如何使用分隔窗格\r\n 7.26 如何使用选项卡窗格\r\n 7.27 如何使用表格\r\n 7.28 如何使用文本区域组件\r\n 7.29 如何使用文本框组件\r\n 7.30 如何使用工具栏\r\n 7.31 如何使用工具提示\r\n 7.32 如何使用树\r\n第8章 布局管理器参考\r\n 8.1 如何使用BorderLayout\r\n 8.2 如何使用BoxLayout\r\n 8.3 如何使用CardLayout\r\n 8.4 如何使用FlowLayout\r\n 8.5 如何使用GridBagLayout\r\n 8.6 如何使用GridLayout\r\n 8.7 如何使用SpringLayout\r\n第9章 其他的Swing特性参考\r\n 9.1 如何使用动作\r\n 9.2 如何支持无障碍技术\r\n 9.3 如何使用边框\r\n 9.4 如何使用拖放和数据传输\r\n 9.5 如何使用焦点子系统\r\n 9.6 如何使用图标\r\n 9.7 如何使用键绑定\r\n 9.8 如何设置外观感觉\r\n 9.9 如何使用线程\r\n 9.10 如何使用计时器\r\n第10章 事件侦听器参考\r\n 10.1 如何编写一个动作侦听器\r\n 10.2 如何编写一个光标侦听器\r\n 10.3 如何编写一个变化侦听器\r\n 10.4 如何编写一个组件侦听器\r\n 10.5 如何编写一个容器侦听器\r\n 10.6 如何编写一个文档侦听器\r\n 10.7 如何编写一个焦点侦听器\r\n 10.8 如何编写一个内部帧侦听器\r\n 10.9 如何编写一个项侦听器\r\n 10.10 如何编写一个键侦听器\r\n 10.11 如何编写一个列表数据侦听器\r\n 10.12 如何编写一个列表选择侦听器\r\n 10.13 如何编写一个鼠标侦听器\r\n 10.14 如何编写一个鼠标移动侦听器\r\n 10.15 如何编写一个鼠标滑轮侦听器\r\n 10.16 如何编写一个属性变化侦听器\r\n 10.17 如何编写一个表格模型侦听器\r\n 10.18 如何编写一个树展开侦听器\r\n 10.19 如何编写一个树模型侦听器\r\n 10.20 如何编写一个树选择侦听器\r\n 10.21 如何编写一个树-将-展开侦听器\r\n 10.22 如何编写一个可撤销编辑侦听器\r\n 10.23 如何编写一个窗口侦听器\r\n附录 解决问题的参考\r\n
本书全面介绍了如何使用hva基础类库的Swing组件编写Java GUI应用程序, 以及开发过程将涉及的重要内容和技巧.
本书在第一版的基础上实现了大量的改进. 从本书结构上看, 它使用了字母顺序的介绍方法, 使得开发人员, 尤其是入门级开发人员能够方便地查找所需内容. 从本书内容上看, 它介绍了Java 2平台1. 4. 2版本新引入的特性, 例如, JFormattedTextField组件. JSpinner组件. 模糊进度的JProgressBar. 鼠标滑轮的支持. 架构重新设计后的新焦点子系统以及对拖放功能的改进支持.
本书提供了大量的示例程序, 图文并茂, 详细地介绍了与每一个组件. 类相关的对象. 提供了简明而又真实的应用情景模拟. 对入门开发人员以及高级程序员来说, 本书都是非常不错的参考用书.
本书的作者都是Sun Microsystems Inc. 公司的高级技术编辑, 而本书示例是由SunMicrosystems Inc. 公司的Swing部分提供, 他们积累了多年的Java平台开发经验, 并且给出了使用Swing组件的最新建议, 例如, 如何保证线程安全问题.
此外, 本书部分章节以及附录还给出了练习和问题回答部分, 这有助于开发人员方便而又及时地找到相应的帮助信息以及解决问题的方法.
本书内容由浅入深, 示例具有较高的可应用性, 适用于使用IFC进行JavaGUI开发的初级和高级程序员.
参与本书翻译工作的还有:于苗苗. 宁靖. 武斌. 吴晓华. 张春梅. 刘姗. 江艳梅. 李国梁. 王萃. 管丁. 周丹慧. 朱荣轩. 李颖. 周研等等. 由于时间和水平有限, 难免出现错误和笔误. 恳请专家和读者不吝指出.
Kathy Walrath是Sun Microsystems公司Swing小组的资深技术撰稿人,她自从1993年就开始编写Java平台的规范和使用手册了。Mary Campione以前也是Sun Microsystems公司的高级技术撰稿人和程序员,她在该公司花了几年的时间编写Java平台方面的文档。她与合作者Kathy Walrath创建了最早的Java Tutorial Web站点,基于该站点共同编写了几本书,包括本书的第一版。Alison Huml是Sun Microsystems公司的技术撰稿人,她于1997年加入Java Tutorial小组,同时还与安全小组一同工作。Sharon Zakhour是Sun Microsystems公司的高级技术撰稿人,从1999年开始支持Swing和AWT小组。她已经工作了18年,做过程序员、开发支持工程师和技术人员。
本书将介绍如何使用Java基础类库(Java Foundation Classes, JFC)的“Swing”组件编写GUI程序. 在本书中, 介绍了最新版本的Java 2平台(在本书编写时是1. 4. 2版本). 此外, 还给出了对使用早期Java 2平台版本的程序员来说非常有价值的信息, 并且讨论了在不久的将来Swing计划实现的一些改进.
本书的在线版本已经在Swing的第一个公开早期访问版本中介绍了Swing组件——Swing0. 2, 它出现于1997年7月. 虽然是早期访问版本, 但是该书还是能够紧跟API变化和新增加的内容. 本书的读者和审校人员让我们时刻保持清醒, 极大地帮助我们改进了本书每一页的内容. 虽然本书是在在线版本的基础上完善的, 但是本版的结构被重新组织而内容也进行了重写.
本版实现了大量的改进. 首先, 本书使用了当前的API(1. 4. 2版), 给出了六个介绍性的章节, 以及便于使用的选项卡式参考部分. 它反映了引入Swing组件以来Swing团队在这些年里获得的经验教训. 其次, 我们还涵盖了一些最新的特性, 例如JFormattedTextField. JSpinner. 模糊进度的JProgressBar. 鼠标滑轮的支持. 架构重新设计后的焦点子系统以及对拖放功能的改进支持.
本书和选配光碟包含了150多个完整的. 可使用的示例. 本书作者与Swing团队密切合作, 保证书中的代码和讨论能够反映我们所建议的使用方法. 如今, Swing组件集已经面世几年, 拥有成熟的API. 这样, 结合Swing编写人员和工程师这几年的经验和这些API, 我们可以为使用Swing组件的初级和高级程序员创建清晰明了的介绍和指南.