gpt4 book ai didi

java - Java 7 中的新 Swing JLayer

转载 作者:行者123 更新时间:2023-12-04 06:14:42 25 4
gpt4 key购买 nike

我刚刚 catch 了 J7 中的一些新功能,并且对这些添加感到困惑 JLayers 在 Swing 。由于它们是如此新,我很难找到关于它们的优秀文献以及使用它们的最佳实践。

任何人都可以指出我正确的方向或提供一个示例来说明这些组件的作用以及它们(通常)服务的目的?

感谢您提供任何意见!

最佳答案

JLayer 可用于动态增强任何现有组件。

假设您有一些自定义按钮(比如 MyJButton)并且您想要添加鼠标悬停效果或一些阴影。传统上,您将创建一个继承自 MyJButton 的新类,该类将实现您的新功能。

这种方法的一个问题是新效果仅适用于 MyJButton(因为您的新类扩展了 MyJButton)。这种方法的另一个问题是你不能在运行时改变增强/效果,因为继承关系在编译时是固定的。

使用 JLayer ,你可以放一个 LayerUI连同任何现有的 Component (不仅仅是 JButton 或 MyJButton)以便将您的自定义效果添加到组件中。如果您有一个执行着色的 LayerUI,您可以将它与 JButton、JTextField、JPanel 或任何其他组件放在一起来执行该着色。您还可以在运行时更改 LayerUI 和组件的组成。
JLayer只是 decorator 的一个特例图案。

http://www.intermediatejava.com/2011/06/jlayer-for-swing/

关于java - Java 7 中的新 Swing JLayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7404161/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com