动画(循环)GIF可以用JLabelHTML格式显示(在格式化的文本组件中JEditorPane),并且可以循环显示.
但是要加载图像作为容器的背景,我通常会使用ImageIO.read()或者Toolkit.getImage()(后者在我感觉上一个千年怀旧时).加载图像的方法都不会导致循环图像,它通常只是第一帧.
如何为背景加载动画图像?
我正在尝试为GIF图像制作动画.动画有效,但画面效果不佳.
它显示如下(非动画截图): 
在图像中,尾巴像这样摇晃: 
如您所见,图像不能很好地重现.我不想使用JLabel但是没有正常工作,所以当我的图像没有动画时,我就按照这个问题.
我的代码是这样的:
public void draw(JPanel canvas, Graphics2D g2d, int x, int y) {
getFrontImage().paintIcon(canvas, g2d, x, y);
}
Run Code Online (Sandbox Code Playgroud)
检索和保存图像的位置如下:
ImageIcon gif = new ImageIcon(getClass().getResource(filename));
Run Code Online (Sandbox Code Playgroud)
在JPanel画布中,我制作了一个paint方法和一个每10ms重绘一次的计时器线程.这适用于除GIF之外的所有事情.谁可以帮我这个?
---编辑
我很抱歉误会,我已将图像更新为我实际使用的图像.我希望得到正确答案并不是太麻烦......