如何在 Java 程序中使用 gif 文件?

Posted

技术标签:

【中文标题】如何在 Java 程序中使用 gif 文件?【英文标题】:How do I use a gif file in a Java program? 【发布时间】:2021-06-30 12:49:48 【问题描述】:

我正在尝试将 .gif 图像添加到 JButton,但在运行代码时似乎无法加载图像。我已经附上了截图。包括创建的框架。我真的很感激可以提供的任何帮助。 Stack 告诉我我还不能输入图像,所以它为它创建了一个链接。我还将在此处附上实际代码:

package java21days;

import javax.swing.*;
import java.awt.*;

public class ButtonsIcons extends JFrame 
    JButton load, save, subscribe, unsubscribe;
    
    public ButtonsIcons() 
        super("Icon Frame");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JPanel panel = new JPanel();
        
        //Icons
        ImageIcon loadIcon = new ImageIcon("load.gif");
        ImageIcon saveIcon = new ImageIcon("save.gif");
        ImageIcon subscribeIcon = new ImageIcon("subscribe.gif");
        ImageIcon unsubscribeIcon = new ImageIcon("unsubscribe.gif");
        
        //Buttons
        load = new JButton("Load", loadIcon);
        save = new JButton("Save", saveIcon);
        subscribe = new JButton("Subscribe", subscribeIcon);
        unsubscribe = new JButton("Unsubscribe", unsubscribeIcon);
        
        //Buttons To Panel
        panel.add(load);
        panel.add(save);
        panel.add(subscribe);
        panel.add(unsubscribe);
        
        //Panel To A Frame
        add(panel);
        pack();
        setVisible(true);
        
        
     //end ButtonsIcon Constructor
    
    public static void main(String[] arguments) 
        ButtonsIcons ike = new ButtonsIcons();
        
    
    
 //end ButtonsIcon Class

enter image description here

【问题讨论】:

这能回答你的问题吗? Can I add an animated gif file to JButton? 您是否尝试过为您的图标使用绝对文件路径? 天哪!谢谢gthanop。添加直接文件路径有效。我不敢相信那是多么容易。再次感谢! 更好的长期解决方案是将图像和其他资源嵌入到 Jar 文件中,然后通过 Class#getResource 加载它们 【参考方案1】:

最简单的方法是。 Label 或 Jbutton 以及其他支持 html 3.5 的东西 JLabel a = new JLabel("");

将其添加到您的容器中。 还没弄清楚如何输入代码抱歉

【讨论】:

感谢您的提示。我使用了他给出的 gthanop 方法,它奏效了。但是,我会尝试每个人的建议(包括你的),这样我就可以继续学习。再次感谢您的帮助。

以上是关于如何在 Java 程序中使用 gif 文件?的主要内容,如果未能解决你的问题,请参考以下文章

如何将JAVA程序中使用的图片打包到JAR中直接使用

如何让 gif 在 Java 中运行一次并停止?

如何将多个 PNG 文件转换为动画 GIF? [关闭]

如何使用ScreenToGif创建一个GIF动画视频

如何将两个动画 gif 与 javascript 合并?

如何在 Android 中从 JPEG 创建动画 GIF(开发)