property OnDblClick: TNotifyEvent; // published, inherited from TControl
OnDblClick scatta dopo il secondo OnClick di una sequenza di doppio clic, usando il tempo di doppio clic di sistema e la finestra di tolleranza in pixel. Il parametro Sender è il TPdfView stesso; la posizione a schermo si può leggere da Mouse.CursorPos e convertire in coordinate client con ScreenToClient
Un uso naturale di questo evento in un lettore PDF è il gesto "zoom sul punto": l'utente fa doppio clic sul documento per alternare adatta-a-larghezza e il livello di zoom precedente, centrando eventualmente la vista sul punto del clic. Un altro pattern comune è usare il doppio clic per selezionare la parola sotto il cursore chiamando CharacterIndexAtPos e poi espandendo CurrentCharIndex / la lunghezza della selezione attorno al carattere colpito
Il gestore di annotazioni/link del viewer gira prima — se l'utente fa doppio clic su un link, il primo clic lo ha già seguito. Il doppio clic è quindi riservato al meglio a comportamenti che non collidono con i gesti di navigazione normali
Enabled = FalsePdfView1.CharacterIndexAtPos(Point(X, Y), PageNo) da un handler OnMouseDown abbinato che memorizza la posizione, poi agisci in OnDblClick
// Toggle between fit-to-width and 100% zoom on double-click
procedure TForm1.PdfView1DblClick(Sender: TObject);
begin
if PdfView1.FitMode = pfmFitToWidth then
begin
PdfView1.FitMode := pfmNone;
PdfView1.Zoom := 1.0;
end
else
PdfView1.FitMode := pfmFitToWidth;
end;