property TabStop: Boolean; // published, inherited from TWinControl
عندما تكون TabStop بقيمة True ينضم عارض PDF إلى دورة Tab الخاصة بالنموذج. فالضغط على Tab بينما عنصر تحكم آخر في النموذج يملك التركيز ينقل التركيز في النهاية إلى العارض، وبعدها تتنشط اختصارات لوح المفاتيح مثل Page Up / Page Down وأسهم الاتجاهات للتمرير ومعالج اختصار البحث المعرَّف في OnKeyDown كلها
إبقاء العارض قابلًا للتركيز أمر مهم لإمكانية الوصول: فقارئات الشاشة والمستخدمون المعتمدون على لوح المفاتيح وحدهم يحتاجون الوصول إلى منطقة المستند للتنقل بين الصفحات أو تشغيل تحديد النص بالضغط على Shift مع أسهم الاتجاهات. والقيمة الافتراضية لخاصية TabStop منشورة على سليل TScrollingWinControl هي True
ضبط TabStop := False يُخرج العارض من ترتيب Tab؛ فلا يزال بإمكان المستخدم النقر داخله للتمرير بالفأرة، لكن لوح المفاتيح لا يستطيع منحه التركيز من دون استدعاء صريح لـ PdfView1.SetFocus. وهذا مفيد أحيانًا عندما يكون العارض زخرفيًا بحتًا — مثل لوح معاينة بجوار قائمة نتائج بحث
TabStop و TabOrder معًا في ملف النموذجAllowUserTextSelection لا يستجيب إلا لسحب الفأرة ولإدخال لوح المفاتيح بعد حصول العارض على التركيز، لذا فإن تعطيل TabStop يجبر المستخدمين فعليًا على النقر قبل تمكنهم من تحديد النص بلوح المفاتيحOnEnter / OnExit مع TabStop لتحديث أشرطة الأدوات (مثلًا تمكين زر نسخ فقط عندما يكون العارض عنصر التحكم النشط)
// Make the viewer fully keyboard-accessible and the first tab stop
procedure TForm1.FormCreate(Sender: TObject);
begin
PdfView1.TabStop := True;
PdfView1.TabOrder := 0;
PdfView1.OnKeyDown := PdfView1KeyDown;
end;
procedure TForm1.PdfView1KeyDown(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
if (Key = VK_F3) then PdfView1.FindNext
else if (Key = Ord('C')) and (ssCtrl in Shift) then
Clipboard.AsText := PdfView1.SelectedText;
end;