我用moveto(x1,y1)和lineto(x2,y2)画了一个近似正弦波,现在遇到一个问题:怎样擦除波形呢? 在网上查了一下资料,有人说用重画,于是我自己写了一段代码如下: procedure TForm1.PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin paintbox1.Canvas .pen.Mode:=pmnotxor; paintbox1.Canvas .moveto(x,Y_Values[x]);//Y_Values[x]函数是波形X轴对应的Y值 paintbox1.Canvas .lineto(x+1,Y_Values[x+1]); end; 以上我的意思是通过一个像素点一个像素点擦除的(即重画),但是,当我鼠标移动快的话,波形 有些点就擦除不干净了,原因我想就是鼠标移动太快捕捉不到波形上的点,请问这个问题如何解决 ?