コンテナに複数の画像を描画する方法と、コンポーネントにアニメーションを描画する方法を理解するのに問題があります。まず、たとえばコンポーネントの背景に 2 つの画像を描画します。コードは次のとおりです。
public class CountryInteriorContainer extends Component {
private PainterChain backgroundPainterChain;
public CountryInteriorContainer () {
super();
backgroundPainterChain = new BackgroundPainterChain(new GroundPainter("CountryBackgroundLand"));
backgroundPainterChain.addPainter(new CastlePainter("CastleBrown"));
getStyle().setBgPainter(backgroundPainterChain);
}
}
ここでは、ペイント キューを作成しています。ただし、コンテナに描画する最初のイメージは 1 つだけです。
public class CastlePainter extends BasePainter {
public CastlePainter(String imageId) {
super(imageId);
}
public CastlePainter(Image image) {
super(image);
}
public void paint(Graphics g, Rectangle rect) {
g.drawImage(getImage(), rect.getX() + 40, rect.getY());
}
}
BasePainter は、キャッシュまたはリソースから画像を初期化しています。
最初の画家だけがうまくいく理由を誰かが理解するのを手伝ってください。また、LWuiT でメロドラマチックなアニメーションを作成する方法についても説明します。