PDFium Delphi Component Docs

PopupMenu Свойство

Компонент: TPdfView  ·  Модуль: PDFium
Связывает TPopupMenu с просмотрщиком PDF, чтобы щелчок правой кнопкой на странице открывал контекстное меню

Syntax

property PopupMenu: TPopupMenu; // published, inherited from TControl

Description

Присваивание PopupMenu привязывает вьювер к компоненту TPopupMenu, лежащему на той же форме. Когда пользователь щёлкает правой кнопкой (или жмёт клавишу меню) внутри вьювера, VCL/LCL автоматически показывает меню в позиции курсора — приложению не нужно самому обрабатывать WM_CONTEXTMENU

Типичное контекстное меню PDF-ридера предлагает пункты вроде Копировать выделенный текст, Приблизить, Отдалить, По ширине, Повернуть, Перейти к странице…, Найти… и Сохранить как… Пункты меню обычно читают или пишут публичные свойства вроде CurrentCharIndex, Zoom, FitMode, Rotation и PageNumber, чтобы воздействовать на документ

Поскольку popup показывается через механизм OnContextPopup, можно динамически подавить или подменить его, обрабатывая OnContextPopup и ставя Handled := True — удобно, когда правый клик пришёлся на поле формы или аннотацию со своим меню

Remarks

Example

// Attach a context menu offering Copy / Fit Width / Go to Page
procedure TForm1.FormCreate(Sender: TObject);
begin
  PdfView1.PopupMenu := pmReader;
end;

procedure TForm1.miFitWidthClick(Sender: TObject);
begin
  PdfView1.FitMode := pfmFitToWidth;
end;

procedure TForm1.miGoToPageClick(Sender: TObject);
var S: string;
begin
  S := IntToStr(PdfView1.PageNumber);
  if InputQuery('Go to page', 'Page number:', S) then
    PdfView1.PageNumber := StrToIntDef(S, PdfView1.PageNumber);
end;

See Also

AllowUserTextSelection, CurrentCharIndex, PageNumber, FitMode