CloneComponent
Partes de documentos, dados variáveis, edição de documentos
Descrição
Método abstrato de TPDFlibDynamicComponent que devolve uma cópia independente do chamador do componente, incluindo todo o estado de paginação mutável
Sintaxe
Function TPDFlibDynamicComponent.CloneComponent:
TPDFlibDynamicComponent; Virtual; Abstract;
Observações
As substituições têm de copiar todos os campos que Compose muta, porque a sessão compõe num clone de trabalho e só consolida esse clone depois de o respetivo Form XObject ser validado e colocado
A sessão depende do clone em vários pontos:
AttachComponent clona duas vezes para as instantâneas inicial e atual, ComposeNextLayout clona uma vez por tentativa para o componente de trabalho, e CloneCurrentComponent clona a instantânea consolidada para inspeção
O chamador de
CloneComponent é proprietário da instância devolvida e liberta-a independentemente do componente de origem
Um resultado
Nil é tratado pela sessão como uma falha de clonagem, que então rejeita a operação de origem sem alterar o estado guardado
Exemplo
function TNumberedPagesComponent.CloneComponent:
TPDFlibDynamicComponent;
begin
Result := TNumberedPagesComponent.Create(FNextPage, FPageCount);
end;
Valores devolvidos
| Nova instância | Uma cópia independente cujas chamadas Compose posteriores não podem afetar o componente de origem |
|---|---|
Nil | A substituição não conseguiu produzir uma cópia; a sessão rejeita AttachComponent e as tentativas de composição que dependem do clone |
Consulte também
TPDFlibDynamicComponent, TPDFlibDynamicComponentSession, Compose, CloneCurrentComponent, AttachComponent