問題:
次の JPanel を作成する必要があります。 repaint メソッドが繰り返し呼び出された場合でも表示されたままの四角形を描画します。
提案された解決策:
JPanel が呼び出されるたびに四角形のリストを作成して再描画する代わりに、再ペイントする場合は、ペイント サーフェイスとして BufferedImage を使用することを検討してください。このアプローチにより、再描画中に消えない永続的な描画が可能になります。
実装:
コード例:
<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>
このアプローチを使用すると、四角形は BufferedImage 上に直接描画されるため、再描画呼び出しを繰り返した後でも JPanel 上に表示されたままになります。
以上がJPanel で永続的な長方形を描画する方法: 再描画時の消失を回避するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。