Lo unico que se me ocurre por el momento y que acabo de probar es lo siguiente:
- Que declares una variable que pueda ser alcanzada por los procedimientos de tu unidad (Yo le llamare Bandera y la colocare en Privates).
- En el evento OnMouseDown del boton pones lo siguiente:
Código Delphi
[-] Bandera := True;
while (ssLeft in Shift) and (Bandera)do
begin
end;
- En el Evento OnMouseUp Lo siguiente:
Espero te sirva para algo.