ImageIcon と、現在の画像をクリックして別の画像に置き換える addMouseListener を使用して、JFrame の画像からボタンを作成しようとしています。
static JPanel jp = new JPanel();
final JLabel jl = new JLabel();
final JFrame jf = new JFrame();
ImageIcon image = new ImageIcon("image1.jpg");
jl.setIcon(image);
jp.add(jl);
jf.add(jp);
jf.validate();
JLabel button = new JLabel(image);
button.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
jl.setIcon( null );
ImageIcon image = new ImageIcon("image2.jpg");
jl.setIcon(image);
}
});
GUIはimage1.jpgで表示されますが、ボタンがまったく機能せず、image1からimage2への置き換えが機能するかどうかもテストできません。ウィンドウに表示された image1.jpg をクリックしようとしても、GUI は何もしません。
編集: JLabel 変数を最終的なものに調整しました。他の同様の質問は、このメソッドが機能するはずであることを暗示していますが、コードの何が問題なのかわかりません。