0

我试图使用不间断断点在控件的 OnMouseMove 事件处理程序中记录一些值。我注意到当鼠标在控件上空闲(不移动)时,断点不断被击中。

经过一番调查,我得出结论,断点是造成这种行为的原因。使用以下示例可以轻松重现此问题。启用断点后,当鼠标悬停在窗体上时,计数器会不断增加。禁用断点时,仅当鼠标移到窗体上时计数器才会增加。

TForm1 = class(TForm)
  Edit1: TEdit; 
  procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
public
  FCounter: Integer;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
  Inc(FCounter);
  Edit1.Text := IntToStr(FCounter);
end;

我可以找到其他方法来记录我需要的信息,但是,我想知道有什么解决方法可以让我使用我原来的方法。

4

0 回答 0