PDFium Component Docs

HasFormFieldAt Właściwość

Component: TPdf  ·  Unit: PDFium
Test trafienia, który zwraca True, gdy widget pola formularza przykrywa podaną współrzędną strony

Syntax

property HasFormFieldAt[X, Y: Single]: Boolean; // read only

Description

HasFormFieldAt wykonuje test trafień na aktualnie aktywnej stronie: zwraca True, gdy podana współrzędna (X, Y) wpada w prostokąt dowolnej adnotacji widżetu. Współrzędne podaje się w przestrzeni użytkownika PDF — w tym samym układzie współrzędnych co PageWidth / PageHeight, z początkiem w lewym dolnym rogu, X rosnącym w prawo, Y rosnącym w górę, w jednostkach punktów (1/72 cala)

Właściwość zwraca False, gdy Active ma wartość False, gdy dokument nie ma widżetów AcroForm albo gdy podana współrzędna nie trafia w żaden prostokąt widżetu. Jest to otoczka o stałym czasie wokół FPDFPage_HasFormFieldAtPoint PDFium — idealna do sprzężenia zwrotnego ruchu myszy / najechania kursorem w podglądzie, gdzie wartość jest odpytywana wiele razy na sekundę

Test trafienia uwzględnia wyłącznie prostokąt widżetu — nie granice wyglądu. Przyciski i pola wyboru, których widoczny glif jest mniejszy niż prostokąt widżetu, nadal zgłaszają True dla całego prostokąta. Połącz z FormFieldInfoAt[X, Y], aby pobrać rekord trafionego pola po potwierdzeniu, że kursor znajduje się nad polem; ten wzorzec unika cięższego pobierania informacji przy każdym zdarzeniu ruchu myszy

Remarks

Example

procedure TForm1.PdfView1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var PageX, PageY: Double;
begin
  PdfView1.DeviceToPage(X, Y, PageX, PageY);
  if Pdf1.HasFormFieldAt[PageX, PageY] then
    PdfView1.Cursor := crHandPoint
  else
    PdfView1.Cursor := crDefault;
end;

See Also

FormFieldAt, FormFieldInfoAt, FormFieldCount, TPdfView.DeviceToPage