如何从头开始重新启动gif动画?框架
Posted
技术标签:
【中文标题】如何从头开始重新启动gif动画?框架【英文标题】:How to restart gif animation from the start? JFrames 【发布时间】:2020-04-09 23:43:42 【问题描述】:当按下按钮时,我正在尝试获取一个 gif,以便在动画中途从头开始重新启动。我该怎么做?
我试过这些方法:
lblDeath.setIcon(new ImageIcon(MainGame.class.getResource("/azzets/blank.png")));
lblDeath.setIcon(new ImageIcon(MainGame.class.getResource("/azzets/3 Seconds.gif")));
lblDeath.setVisible(false);
lblDeath.setIcon(new ImageIcon(MainGame.class.getResource("/azzets/3 Seconds.gif")));
lblDeath.setVisible(true);
(3 秒 gif 是我试图重新启动的那个)
谢谢。
【问题讨论】:
尝试在ImageIcon
的Image
上使用flush
。但是,如果您多次使用相同的图像,您可能需要小心这一点,如 here
所述。
【参考方案1】:
确实,如评论部分所述,您可以将flush()
用于标签的图标图像:
ImageIcon icon = (ImageIcon) gifLabel.getIcon();
Image img = icon.getImage();
ImageIcon newIcon = new ImageIcon(img);
img.flush();
gifLabel.setIcon(newIcon);
【讨论】:
以上是关于如何从头开始重新启动gif动画?框架的主要内容,如果未能解决你的问题,请参考以下文章