驯服Tiger: 当Ocean和Synth遇上Metal - 编程入门网
驯服Tiger: 当Ocean和Synth遇上Metal时间:2011-01-31 John Zukowski正式发布:2004 年 9 月 30 日,Java 2 开发工具包 5.0 版(对,就是以前的 JDK)隆重登场。作为新平台的一部分,您可以得到两个面目一新的对象,它们可以让您更改程序的用法和外观。Ocean 是 Java 新的默认外观,它取代了原有的 Metal 版本。Synth 是新东西,它通过外部 XML 文件提供外观的说明。 Ocean 详解 抛弃了1.4 默认的老旧的 Metal 外观之后,在 Java 运行时环境 5.0 中,您现有拥有了一个新的、称为 Ocean 的外观。但是 Ocean 并不是一个全新的外观。Ocean 并没有重新从头开始设计一个新的外观,而是被作为 Metal 外观的一个新主题。这意味着,如果您已经定制了 Metal 外观,那么您的程序在 5.0 下看起来会和以前一样。如果您使用新的 Ocean 主题,那么程序看起来就会不一样。 如果您不熟悉主题,那么抽象类 MetalTheme 提供了一个抽象外观使用的颜色和字体的方法。实际上,通过改变主题,您可以改变外观的效果。而且,这就是 Ocean 要做的事情。正因如此,Ocean 并不是一个“真正”的外观。相反, OceanTheme 类为 Swing 提供了一种更柔和的外观。用 SwingSet2 的演示程序作为向导,比较图 1 中 Meta 外观的原有主题 Steel 与图 2 中 Metal 外观的 Ocean 主题: 图 1. Metal 的 Steel 主题 图 2. Metal 的 Ocean 主题 驯服Tiger: 当Ocean和Synth遇上Metal(2)时间:2011-01-31 John Zukowski请注意图 2 中按钮组件的渐变背景。这项技术显示了柔化 1.4 版本的颜色集的一种方法。如果您想使用老方法,只需把 Metal 的主题设置回 steel 即可。可以用下面的代码强制系统属性 swing.metalTheme 用 Metal 外观的 steel 主题启动程序: java -Dswing.metalTheme=steel packageName.ClassName SwingSet2 演示程序中没什么新东西,但它显示了其他许多主题,其中包括 Aqua 和 Charcoal。使用 Aqua 主题的源代码,如清单 1 所示,这些代码要做的全部工作就是重新映射了一些颜色。 清单 1. Aqua 主题源代码
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |