Otra opción:
Declaras una variable MouseUp de tipo booleano en tu formulario y escribes eventos OnMouseDown y OnMouseUp del botón como sigue:
Código:
procedure TForm1.Button1MouseDown(...);
begin
MouseUp := false;
repeat
Query.Next;
Application.ProcessMessage;
until MouseUp;
end;
procedure TForm1.Button1MouseUp(...);
begin
MouseUp := true;
end;
// Saludos