java - 在 LWuiT 组件上绘制动画和图像

标签 java java-me lwuit

我在理解如何在容器中绘制多个图像以及如何在组件上绘制动画时遇到问题。 首先,我想在组件背景上绘制例如两个图像。这是代码:

公共(public)类CountryInteriorContainer扩展组件{

private PainterChain backgroundPainterChain;

public CountryInteriorContainer () {
    super();

    backgroundPainterChain = new BackgroundPainterChain(new GroundPainter("CountryBackgroundLand"));
    backgroundPainterChain.addPainter(new CastlePainter("CastleBrown"));

    getStyle().setBgPainter(backgroundPainterChain);
}

}

这里我正在创建绘画队列。但在容器上绘制时只有一个第一个图像。

公共(public)类 CaSTLePainter 扩展了 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 中创建戏剧性的动画。

最佳答案

我建议您只重写 paint()paintComponent() 而不是陷入画家的复杂性。当尝试构建动画效果时,这一点更为重要。

查看 LWUIT 演示中的动画和 Codename One演示,您无需太多代码即可重现这种风格的动画。

关于java - 在 LWuiT 组件上绘制动画和图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11953121/

相关文章:

lwuit - 如何从 LWUIT 中删除 back 命令

java-me - 我在哪里可以找到/下载 LWUIT 主题

Java Swing - 从鼠标监听器更改 JComponent 不透明度

java - 传递小数时收到 "Not a valid char constructor input"错误

java - 在 java me 中选择和读取文件

java - 在应用程序启动黑莓时运行多个网址

java - LWUIT画家: How to make an image the background?

java - 如何使用 Java HTMLParser (org.htmlparser) 替换链接的 URL

java - 如何从 java 的类路径外部动态加载 Clojure 脚本?

黑莓条码扫描库?