Я рисую много буферизованных изображений на JFrame, используя метод paint(),
public void paint(Graphics g){
super.paint(g);
Graphics2D g2d = (Graphics2D) g;
g2d.drawImage(bufferedImg, x, y, layeredPane);
...More images
}
Проблема в том, что он перерисовывает все изображения, поэтому экран становится пустым, а затем отображает изображения. Мне нужно перерисовать одно изображение, а не все в методе рисования. Поэтому я попытался выделить другой метод, а не метод рисования, и просто вызвать его.
public void drawImage(){
Graphics2D g2d = (Graphics2D) getGraphics();
if (condition == true) g2d.drawImage(bufferedImg, x, y, layeredPane);
}
И это работает для рисования изображения, но как только логическое значение установлено в false и вызывается, оно все еще сохраняет изображения на экране. Извините, если это было опубликовано ранее, я видел довольно много сообщений о перерисовке изображений в Java, но я не смог найти ни одного, которое конкретно перерисовывало бы одно изображение.