我有一个继承自 JPanel 的类,上面有一个图像,我想设置一个小动画来显示面板/图像,然后在事件触发时将其淡出。
我大概设置了一个线程并触发动画,但我该如何实际进行淡入淡出?
最佳答案
你可以自己做线程,但使用 Trident 可能更容易。库来处理它。如果您在您的类上创建一个名为(例如,setOpacity
)的 setter ,您可以要求 trident 在特定时间段内将“不透明度”字段从 1.0 插入到 0.0(这里是 some of the docs 关于如何使用三叉戟)。
当您绘制图像时,您可以使用 AlphaComposite
来实现透明度,使用复合 Material 的 alpha 参数的更新“不透明度”值。有一个 Sun 教程,其中包含 alpha composite example .
关于java - 如何在 Swing 中淡化图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2228735/