Ola meus amigos, estou tentando fazer um panel que desenhe quando eu clicar e arrastar com o botao esquerdo e q apague quando clicar e arrastar com botao direiro. Olhem o codigo ai e se puder me ajudem por favor pois ele so ta desenhando, nao esta apagando.
import java.awt.Color;
import java.awt.Point;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import javax.swing.JPanel;
public class PaintPanel extends JPanel
{
private int pointCount = 0; // número de contagem de pontos
// array de 10000 referências java.awt.Point
private Point points[] = new Point[ 10000 ];
private boolean button = true;
// configura a GUI e registra handler de evento de mouse
public PaintPanel()
{
// trata evento de movimento de mouse do frame
addMouseMotionListener(
new MouseMotionAdapter()// classe interna anônima
{
// armazena coordenadas de arrastar e repinta
public void mouseDragged( MouseEvent event )
{
if (event.isMetaDown()){
if ( pointCount < points.length )
{
points[ pointCount ] = event.getPoint(); // localiza o ponto
pointCount++; // incrementa número de pontos em array
button = false;
repaint(); // repinta JFrame
}//fim if interno
}else{
if ( pointCount < points.length )
{
points[ pointCount ] = event.getPoint(); // localiza o ponto
pointCount++; // incrementa número de pontos em array
button = true;
repaint(); // repinta JFrame
}//fim if interno
}//fim do if else
} // fim do método mouseDragged
} // fim da classe interna anônima
); // fim da chamada para addMouseMotionListener
} // fim do construtor PaintPanel
// desenha oval em um quadro delimitador de 4x4 no local especificada na janela
public void paintComponent( Graphics g )
{
super.paintComponent( g ); // limpa a área de desenho
// desenha todos os pontos no array
if (button = true){
g.setColor(Color.BLUE);
}else{
g.setColor(Color.WHITE);
}
for ( int i = 0; i < pointCount; i++ )
g.fillOval( points[ i ].x, points[ i ].y, 4, 4 );
} // fim do método paintComponent
} // fim da classe PaintPanel