property OnDblClick: TNotifyEvent; // published, inherited from TControl
OnDblClick utlöses efter den andra OnClick i en dubbelklicksekvens, med systemets dubbelklickstid och toleransfönster i pixlar. Parametern Sender är själva TPdfView; skärmpositionen kan hämtas från Mouse.CursorPos och omvandlas till klientkoordinater med ScreenToClient.
Ett naturligt användningsområde för denna händelse i en PDF-läsare är gesten "zooma-till-punkt": användaren dubbelklickar på dokumentet för att växla mellan anpassa-till-bredd och den föregående zoomnivån, alternativt centrera vyn över klickpositionen. Ett annat vanligt mönster är att använda dubbelklick för att markera ordet under markören genom att anropa CharacterIndexAtPos och sedan expandera CurrentCharIndex / markeringslängden runt det träffade tecknet.
Visarens hanterare för anteckningar/länkar körs först — om användaren dubbelklickar på en länk har det första klicket redan följt länken. Dubbelklick är därför bäst reserverat för beteenden som inte kommer i konflikt med vanliga navigeringsgester.
Enabled = False.PdfView1.CharacterIndexAtPos(Point(X, Y), PageNo) från en parade OnMouseDown-hanterare som registrerar positionen, och agera sedan i 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;