AttachComponent

Partes de documentos, datos variables, edición de documentos

Descripción

Reemplaza las instantáneas inicial y actual del componente de una TPDFlibDynamicComponentSession con clones nuevos de un componente propiedad de quien llama y limpia todo el estado de progreso

Sintaxis

Function TPDFlibDynamicComponentSession.AttachComponent(
  AComponent: TPDFlibDynamicComponent): Integer;

Parámetros

AComponentComponente propiedad de quien llama cuyo CloneComponent proporciona tanto la nueva instantánea inicial como la nueva instantánea actual

Observaciones

Ambos clones se crean antes de liberar cualquier instantánea almacenada, de modo que un CloneComponent que devuelva Nil deja intactos el componente anterior, el contador de composiciones, la bandera de finalización y el estado de reintento En caso de éxito, la sesión libera sus instantáneas antiguas, almacena el nuevo par y restablece

CompositionCount a cero, Completed, KeepTogetherRetryPending, LastRetryReason y LastRequiredSlotHeight La sesión nunca toma propiedad de

AComponent

AttachComponent; solo se almacenan los clones, de modo que quien llama conserva y libera la instancia pasada de forma independiente El constructor de la sesión llama a Nil, de modo que una sesión creada con un componente

Ejemplo

Replacement := TNumberedPagesComponent.Create(1, 5);
try
  if Session.AttachComponent(Replacement) = 1 then
    Status := Session.ComposeNext(PageNumber, 36, 36, 540, 720,
      Placement);
finally
  Replacement.Free;
end;

Valores devueltos

1Ambos clones se crearon y confirmaron como las nuevas instantáneas inicial y actual, con todo el estado de progreso limpiado
0AComponent es Nil o una de las llamadas a CloneComponent devolvió Nil, y las instantáneas y el estado anteriores se conservan

Véase también

TPDFlibDynamicComponentSession, TPDFlibDynamicComponent, CloneComponent, CloneCurrentComponent, ComposeNextLayout