Problème :
Vous devez créer un JPanel qui dessine des rectangles qui restent visibles même lorsque la méthode repaint est appelée à plusieurs reprises.
Solution proposée :
Au lieu de créer une liste de rectangles et de les redessiner à chaque fois que le JPanel est repeint, pensez à utiliser une BufferedImage comme surface de peinture. Cette approche permet un dessin persistant qui ne disparaîtra pas lors des repeints.
Mise en œuvre :
Exemple de code :
<code class="java">class MyPanel extends JPanel { private BufferedImage canvasImage; // ... @Override public void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(canvasImage, 0, 0, this); } }</code>
En utilisant cette approche, le rectangle restera visible sur le JPanel même après des appels répétés de repaint, car il est dessiné directement sur BufferedImage.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!