Welcome 微信登录

首页 / 软件开发 / JAVA / 利用SwingX与TimingFramework实现淡入淡出

利用SwingX与TimingFramework实现淡入淡出2010-12-17 BlogJava Sha Jiang本文使用SwingX与TimingFramework展示了如何实现淡入淡出效果,程序简洁 实用,希望对大家能有所助益。

在Swing中使用AlphaComposite设置界面的半透明度,再配合 javax.swing.Timer可以比较容易地实现淡入淡出效果。但需要我们继承具体的 UI组件,并重写它的paintComponent方法,同时还要为Timer提供一个 ActionListener的实现。这些对于程序员来说,显得有些乏味。

幸运地是,SwingX中的JXPanel(JPanel的子类)通过setAlpha方法来设置半透 明度,JXPanel中的所有UI组件都可随之半透明化。TimingFramework提供的 Animator可以帮助我们非线性地设置JXPanel中的alpha值。故,我们在实现淡入 淡出时,可以使用JXPanel来替代JPanel,用Animator来替代Timer。