Soy un novato y encontré un problema con el seguimiento del mouse de Java. Espero que el siguiente código pueda dibujar una línea completa cuando el mouse se mueve "rápido", en lugar de hacerlo de manera intermitente.
importar?java.awt.Graphics;
importar?java.awt.event.MouseEvent;
importar?java .awt.Graphics;
importar?MouseEvent;
importar?java.awt.event.MouseMotionAdapter;
importar?javax.swing.JFrame; p>
p>
¿clase?pública?MouseDrawLine?extiende?JFrame?{
int?x,?y;
int?endX,?endY;
public?MouseDrawLine()?{
addMouseListener(new?MouseAdapter()?{
// Evento MousePressed
@Override
public?void?mousePressed(MouseEvent?e)?{
x?=?e.getX();
y?=?e.getY( );
}
//evento mouseReleased
@Override
public?void?mouseReleased( MouseEvent?e)? {
System.out.println("Evento emergente del mouse");
}
}
});
p>
addMouseMotionListener(new?MouseMotionAdapter()?{
// Evento MouseDragged
@Override
public?void?mouseDragged(MouseEvent?e )?{
Gráficos?g?=?getGraphics();
g.setColor(Color.BLACK);
endX?=?e.getX ();
endY?=?e.getY();
g.drawLine( x,?y,?endX,? endY);
x?=?endX;
y?=?endY;
}
}
});
setSize(600,?500);
setLocation(200,100);
setVisible(true);
setDefaultCloseOperation(3);
}
¿público?{
¿nuevo?