podrias intentar esto...
Declaras 1 variable para contar clics
Ahora en el Onclic y OnDblClic de lo que quieras pones...
[delphi]
TForm1.Onclick(Sender: TObject);
begin
inc(clics,1);
if not Timer1.enabled then Timer.enabled := true;
end;
TForm1.OnDlbClic(Sender: TObject);
begin
if Timer1.enabled then Timer.enabled := false; // Pararemos el timer si haces doble clic;
DosClics; // Ejecutas tu proceso de doble clic
end;
Creas un timer en cuyo Evento se contabilize clics
Código Delphi
[-]
procedure TForm1.Timer1OnTimer(Sender: TObject);
begin
Timer1.enabled := false;
if clics = 1 then UnClic; Clics := 0; end;
Puede que te funcione correctamente, pero claro, el problema te vendrá cuando tengas que aplicarlo a muchos eventos... es una solución chapucerilla. Tal vez basandote en esto puedas encontrar alguna forma más rápida y ligera de alcanzar tu objetivo.