property OnDblClick: TNotifyEvent; // published, inherited from TControl
OnDblClick спрацьовує після другого OnClick у послідовності подвійного клацання, використовуючи системний час подвійного клацання та піксельне вікно допуску. Параметр Sender — сам TPdfView; екранну позицію можна отримати з Mouse.CursorPos і перетворити на клієнтські координати через ScreenToClient
Природне використання цієї події в PDF-проглядачі — жест "масштаб до точки": користувач двічі клацає документ, щоб перемикатися між вписуванням за шириною та попереднім рівнем масштабування, за потреби центруючи подання на позиції клацання. Інший поширений патерн — використати подвійне клацання для виділення слова під курсором, викликавши CharacterIndexAtPos і розширивши CurrentCharIndex / довжину виділення навколо влученого символу
Обробник анотацій/посилань проглядача виконується першим — якщо користувач двічі клацає посилання, перше клацання вже перейшло за ним. Тому подвійне клацання найкраще зарезервувати для поведінки, що не конфліктує зі звичайними жестами навігації
Enabled = FalsePdfView1.CharacterIndexAtPos(Point(X, Y), PageNo) зі сполученого обробника OnMouseDown, який записує позицію, а дійте вже в OnDblClick
// Перемикати між вписуванням за шириною і масштабом 100% при подвійному клацанні
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;