JFrame にアイコン イメージを追加する方法を見つけようとしてインターネットを検索してきましたが、エラーが発生し続けます。これがスタック オーバーフローで尋ねられたことは理解していますが、解決策がうまくいきません。これが私のコードです:
ImageIcon imageIcon = new ImageIcon("src/slime.png");
ImageIcon image = new ImageIcon("src/slime.gif");
JLabel label = new JLabel(image, JLabel.CENTER);
label.setAlignmentX(0);
label.setAlignmentY(0);
label.setIcon(image);
JFrame window = new JFrame("Slime");
window.setVisible(true);
window.setSize(250, 200);
window.setResizable(false);
window.setIconImage(newImageIcon(getClass().getResource("src/slime.png")).getImage());
window.add(label);
ここに私が得るエラーがあります:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(ImageIcon.java:205)
at MainJFrame.<init>(MainJFrame.java:39)
at MainJFrame$1.run(MainJFrame.java:18)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:727)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:688)
at java.awt.EventQueue$3.run(EventQueue.java:686)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:697)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
助けていただければ幸いです。注: window.setIconImage(imageIcon.getImage()); を試しました。しかし、それは機能せず、画面に印刷した他の画像が消えます。