property TabStop: Boolean; // published, inherited from TWinControl
Cuando TabStop es True, el visor PDF se une al ciclo de Tab del formulario. Pulsar Tab mientras otro control del formulario tiene el foco acaba moviendo el foco al visor, tras lo cual se activan los atajos de teclado como Page Up / Page Down, los cursores para hacer scroll y el handler de atajo de búsqueda definido en OnKeyDown
Mantener el visor enfocable es importante para la accesibilidad: los lectores de pantalla y los usuarios que solo usan teclado necesitan llegar al área de documento para pasar páginas o disparar la selección de texto manteniendo Shift con los cursores. El valor por defecto de un TabStop published en un descendiente de TScrollingWinControl es True
Establecer TabStop := False saca al visor del orden de Tab; el usuario aún puede hacer clic en él para hacer scroll con el ratón, pero el teclado no puede enfocarlo sin una llamada explícita a PdfView1.SetFocus. Esto a veces resulta útil cuando el visor es puramente decorativo — por ejemplo, un panel de vista previa junto a una lista de resultados de búsqueda
TabStop como TabOrder se guardan en el archivo de formularioAllowUserTextSelection solo reacciona a arrastres del ratón y a la entrada de teclado una vez que el visor tiene el foco, de modo que deshabilitar TabStop obliga en la práctica al usuario a hacer clic antes de poder seleccionar texto con el tecladoOnEnter / OnExit en combinación con TabStop para actualizar barras de herramientas (por ejemplo, habilitando el botón Copiar solo cuando el visor sea el control activo)
// Hacer el visor totalmente accesible por teclado y la primera parada de tabulación
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;