TPopupMenu do przeglądarki PDF, tak aby kliknięcie prawym przyciskiem na stronie wyświetlało menu kontekstoweproperty PopupMenu: TPopupMenu; // published, inherited from TControl
Ustawienie PopupMenu łączy przeglądarkę z komponentem TPopupMenu umieszczonym na tym samym formularzu. Gdy użytkownik kliknie prawym przyciskiem myszy albo naciśnie klawisz menu wewnątrz przeglądarki, VCL/LCL automatycznie pokazuje menu w pozycji kursora — aplikacja nie musi sama obsługiwać WM_CONTEXTMENU
Typowe menu kontekstowe czytnika PDF oferuje pozycje takie jak Copy Selected Text, Zoom In, Zoom Out, Fit Width, Rotate, Go to Page…, Find… i Save As…. Pozycje menu zwykle odczytują lub zapisują publiczne właściwości, takie jak CurrentCharIndex, Zoom, FitMode, Rotation i PageNumber, aby działać na dokumencie
Ponieważ menu podręczne jest wyświetlane przez mechanizm OnContextPopup, można je dynamicznie ukryć albo zastąpić, obsługując OnContextPopup i ustawiając Handled := True — jest to przydatne, gdy kliknięcie prawym przyciskiem następuje nad polem formularza albo adnotacją, która potrzebuje własnego menu
TPopupMenu jest zapisywane jako referencja komponentu w pliku formularzaAllowUserTextSelection ma wartość FalseTPopupMenu.OnPopup i sprawdź stan przeglądarki, taki jak CurrentCharIndex albo Pdf.Active
// 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;