鼠标一旦移动过快就不连续了;求大佬教学!
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
int x = e.X;
int y = e.Y;
Graphics g;
g = this.CreateGraphics();
if(e.Button == MouseButtons.Left)
{
g.FillEllipse(Brushes.Blue,x,y,10,10);
}
}
}
g.FillEllipse(Brushes.Blue,x,y,10,10);
改为记录前后2个点的坐标,然后 DrawLine
记录前一个点的坐标,然后在当前需要画点的时候做判断:如果当前点的坐标距离前一个点的坐标大于你画的圆的直径时候进行平滑的插帧,因为轨迹不连续的原因就是因为两个椭圆中心的距离大于了椭圆的半径,所以你只要适当的进行插帧,就是在两个不连续的椭圆之间再多画几个椭圆使他们连续就好了。
大佬解决了吗