0

ボタンをクリックした後に画像を追加するのに問題があります。jlabel/imageicon でコードを追加しただけです

JLabel picture;     
public Check() {   
    picture = new JLabel(createImageIcon("images\\exit.png"));   
    add(picture, BorderLayout.WEST);   
}   

 public void actionPerformed(ActionEvent e) {   
    picture.setIcon(createImageIcon("images\\update.png"));   
    }   

protected static ImageIcon createImageIcon(String path) {   
    java.net.URL imgURL = Check.class.getResource(path);   
    System.err.println(imgURL);   
    if (imgURL != null) {   
        return new ImageIcon(imgURL);   
    } else {   
        System.err.println("Couldn't find file: " + path);   
        return null;   

    }   
}  

私は常にパスに対して null を取得します。何が問題なのですか

別の方法でテストしたときと同じように、画像パスは正しいです。

public Check() {   
String imgStr = "images\\exit.png";   
     ImageIcon image = new ImageIcon(imgStr);   
     JLabel label1 = new JLabel(image, JLabel.CENTER);   
     JPanel South = new JPanel();   
     South.add(label1);   
     add("South", South);   
} 

画像が表示されますが、これは実行時に行われます。ボタンをクリックしたときではなく、画像が既に存在します。

ありがとう

4

2 に答える 2