У меня есть класс Java, который расширяет JPanel и реализует MouseListener и пытается дублировать некоторые базовые функциональные возможности JButton, но с некоторыми загруженными изображениями, чтобы сделать вещи более красивыми.Вот несколько фрагментов моего кода.
Поле класса:
private BufferedImage image;
В конструкторе у меня есть:
try {
image = ImageIO.read(new File("image/firstImage.png"));
} catch (IOException ex) {
}
Затем я перезаписываю paintComponent для рисования изображения:
public void paintComponent(Graphics g) {
g.drawImage(image, 0, 0, null);
}
И это прекрасно работает!Ура.Но я также хочу иметь возможность изменять изображение, которое рисуется на экране.Это не работает:
public void mousePressed(MouseEvent arg0) {
try {
image = ImageIO.read(new File("image/newImage.png"));
} catch (IOException ex) {
}
}
mousePressed () определенно срабатывает успешно (пробовал оператор отладки System.out.println ()), так что мне нужно сделать, чтобы успешно изменить нарисованное изображение?