procedure SetFocusableAnnotationSubtypes(const Subtypes: array of TPdfAnnotationSubtype);
| Subtypes | آرایهٔ باز TPdfAnnotationSubtype. فهرست جایگزین کامل؛ حاشیهنویسیهایی که زیرگروهشان در این آرایه نباشد نمیتوانند فوکوس بگیرند. آرایهٔ خالی فهرست را خالی میکند |
محیط پرکردن فرم فهرستی از زیرگروههای حاشیهنویسی واجد شرایط فوکوس نگه میدارد. پیشفرض آن فهرست ویجتهای فرم را پوشش میدهد؛ همان چیزی که پیمایش کیبوردی مثل FocusFormField بین آنها حرکت میکند. این فراخوان کل فهرست را از طریق رابط نیتیو (FPDFAnnot_SetFocusableSubtypes) جایگزین میکند، مثلاً برای آنکه یک بیننده بتواند به حاشیهنویسیهای free-text یا دیگر حاشیهنویسیهای نشانهگذاری هم فوکوس بدهد
هر مقدار TPdfAnnotationSubtype پیش از فراخوان به مقدار نیتیو خودش کدگذاری میشود. پاسدادن آرایهٔ خالی یک اشارهگر nil با شمار صفر به نیتیو میفرستد و فهرست را خالی میکند؛ تا وقتی فهرست تازهای ست نشود هیچچیز قابل-فوکوس نمیماند
این فراخوان به سند بارشده و محیط پرکردن فرم مقداردهیشده نیاز دارد؛ وقتی فرمها مقداردهی نشده باشند EPdfError با پیام Form fill environment is not initialized برمیانگیزد. شکست فراخوان نیتیو هم Cannot set focusable annotation subtypes برمیانگیزد. فهرست فعلی را با GetFocusableAnnotationSubtypes میتوانید پس بگیرید
begin
Pdf1.LoadFromFile('form.pdf');
// widgets stay focusable, free-text notes join them
Pdf1.SetFocusableAnnotationSubtypes([anWidget, anFreeText]);
end;