java - 我无法在 GUI 上实现图像

标签 java image swing user-interface embedded-resource

我正在使用 eclipse,我想将图像添加到我的 GUI 的标签或 Logo 上。

我希望它看起来像这样!

http://imageshack.us/a/img593/4957/skeletancalcimage.png

我把它上传到网上是因为我没有 10 的声誉。

(Names cool program) 是图像

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

    public class MainClass extends JFrame{ // super class JFrame

        // Kind of a tutorial for creating GUI's in java
        private JLabel label;
        private JLabel label1;
        private JButton button;
        private JTextField textfeild;
        private ImageIcon image1; // image for my logo

        public MainClass () {
            setLayout (new FlowLayout());

            image1 = new ImageIcon (getClass ().getResource ("logo.gif")); // declares image

            label = new JLabel ("This is the label");
            add (label);

            label1 = new JLabel (image1); // adds image
            add (label1);

            textfeild = new JTextField (15);
            add (textfeild);

            button = new JButton ("Click");
            add (button);

        }

        public static void main(String[] args) {        

            MainClass gui = new MainClass ();


            gui.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); // creates window
            gui.setSize (300,300);
            gui.setVisible (true);
            gui.pack ();
            gui.setTitle ("Title");

        }

    }

程序编译但不运行。给我

Exception in thread "main" java.lang.NullPointerException
    at javax.swing.ImageIcon.<init>(Unknown Source)
    at JonsCalc.<init>(JonsCalc.java:18)
    at JonsCalc.main(JonsCalc.java:38)

最佳答案

这段代码 getClass().getResource ("logo.gif") 意味着应该从与您的类 MainClass 相同的位置加载图像。检查您的图像是否与 MainClass 在同一个包中。如果您使用 Eclipse,则将图像文件放在 src 文件夹中的包中,它会自动复制到 bin

关于java - 我无法在 GUI 上实现图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14014930/

相关文章:

java - 处理多个用户在 Web 应用程序中更新相同的表单

java - 使用 Java 为多个图像制作动画

javascript - 一种将 Canvas 中的 "toggle"图像当作 gif 的方法

wpf - 如何使用ICommand实现DockPanel或图像单击?

java - 合并 JTable 中的单元格

java - 添加 JMenuBar 并将其设置为可见后,Eclipse 不显示 JMenu 项目?

java - 忽略java日期比较中的任何空格或换行符

java - 如何查找对象引用的多维数组的数组类型及其维度

java - 当 ArrayList 排序时,DefaultListModel 不会改变

java - Spring 休息。消除 HTTP.POST 中的 json 属性