java - 在几个JLabel中设置相同的gif作为图标

标签 java swing jlabel gif

我想设置一个gif(不循环,只播放一次)作为几个JLabels的图标(使用setIcon)。问题是:当我将其设置为第一个 JLabel 的图标时,gif 以正常方式播放,但在第二个和其他 JLabel 中仅停留在最后一帧...

我的问题是:如何让 gif 播放任意多次,而不干扰过去的 JLabels?

希望我已经表达了我的观点。

编辑: 我尝试过使用 repaint() 但仍然无法使其工作。

最佳答案

将图像加载为 byte[] 并将其标记为每个标签的单独图像。

如果通过 URLFile 加载图像实例,JRE 通常会缓存图像实例,但提供 byte[] (或 ByteArrayInputStream) 到加载方法会阻止缓存。

关于java - 在几个JLabel中设置相同的gif作为图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12958517/

相关文章:

java - 交错两个字符串数组

java - 将 JLabel 放在 JPanel 之上

java - 选择行之前在 JTable 中执行操作

Java - 将 system.out.println 重定向到 JLabel

java - JLabel 组件中的几个图像快照

java - 将文本从 JTextField 放入 JLabel

java - 如何在Play 2.0框架中实现 "remember me "功能?

java - 如何识别正则表达式中两个之间没有空格的标记?

c# - 将 C# DataTable 的序列化实例转换为 java

Java 如何将menuBar添加到JFrame而不破坏我的布局