如何在不进行子类化的情况下更改Java Component的颜色或边界?

时间:2013-09-09 16:38:02

标签: java animation awt javaquery timing-framework

我正在使用Java timing framework来执行动画。我想要的是能够在AWTSwing 组件上执行一些动画而无需对其进行子类化。我感兴趣的动画包括更改边界,颜色或alpha。网上有很多关于如何子类化Component的例子,然后覆盖paint(Graphics)方法以执行此类更改,但是我想找到一种不同的方法。

我尝试通过调用

获取Component的图片
Graphics2D g2d = (Graphics2D) component.getGraphics();

然后操纵它 - 例如设置alpha值:

AlphaComposite newComposite = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, newVal);
g2d.setComposite(newComposite);
component.repaint();

然而,这没有任何作用。我尝试过其他方法 - 例如使用自定义TimingTargetPropertySetter,但我没有运气。什么是正确的方法?

为了给这个问题提供更多的上下文,这是针对我的javaQuery库,它是 jQuery Java 的一个端口,并且模仿我的以前的项目(带有工作动画)droidQuery

0 个答案:

没有答案