property Enabled: Boolean; // published, inherited from TControl
Enabled가 True면 뷰어가 마우스 클릭, 드래그, 마우스 휠, 키보드 내비게이션에 반응합니다. False로 두면 페이지는 정상적으로 렌더링된 채 — 마우스 클릭이 선택이나 스크롤 위치를 바꾸지 못하고, 키보드 단축키가 페이지를 넘기지 못하며, 폼 필드 위젯이 이벤트를 받지 못하는 식으로 모든 사용자 입력이 막힙니다
이것이 정석적인 "읽기 전용 미리보기" 모드입니다. 문서는 보이는 상태로 유지되어 사용자가 내용을 볼 수 있지만 실수로 스크롤을 넘기거나, 폼 필드를 바꾸거나, 텍스트를 선택할 수 없습니다. 저장, 인쇄, 내보내기 같은 긴 작업이 도는 동안 UI를 예측 가능하게 유지하려다가, 작업이 끝나면 뷰어를 다시 켜세요
비활성 상태는 부모에서도 전파됩니다 — 부모 패널이 비활성화되면 뷰어 자신의 Enabled가 True여도 입력 목적으로는 비활성으로 취급됩니다. 비활성 콘텐츠의 시각적 모양은 호스트 테마에 달려 있으며, VCL 테마 중에는 컨트롤을 흐리게 만드는 것도 있고 모양을 그대로 두는 것도 있습니다
TrueAsyncRendering 같은 백그라운드 작업은 멈추지 않습니다 — 캐시된 페이지 비트맵은 계속 갱신되고 사용자 입력만 막힙니다AllowUserPageChange와 AllowUserTextSelection을 쓰세요
// Disable the viewer while a long export is in progress
procedure TForm1.btnExportClick(Sender: TObject);
begin
PdfView1.Enabled := False;
try
ExportAllPagesToImages(PdfView1.Pdf, 'C:\out\');
finally
PdfView1.Enabled := True;
PdfView1.SetFocus;
end;
end;