CloneComponent
Parti del documento, dati variabili, modifica dei documenti
Descrizione
Metodo astratto di TPDFlibDynamicComponent che restituisce una copia indipendente dal chiamante del componente, compresi tutto lo stato di paginazione mutabile
Sintassi
Function TPDFlibDynamicComponent.CloneComponent:
TPDFlibDynamicComponent; Virtual; Abstract;
Note
Gli override devono copiare ogni campo che Compose muta, perché la sessione compone su un clone di lavoro e conferma quel clone solo dopo che il suo Form XObject è stato validato e posizionato
La sessione si affida al clone in diversi punti:
AttachComponent clona due volte per gli snapshot iniziale e corrente, ComposeNextLayout clona una volta per tentativo per il componente di lavoro, e CloneCurrentComponent clona lo snapshot confermato per l'ispezione
Il chiamante di
CloneComponent è proprietario dell'istanza restituita e la libera indipendentemente dal componente sorgente
Un risultato
Nil viene trattato dalla sessione come un fallimento della clonazione, che quindi respinge l'operazione originaria senza cambiare lo stato memorizzato
Esempio
function TNumberedPagesComponent.CloneComponent:
TPDFlibDynamicComponent;
begin
Result := TNumberedPagesComponent.Create(FNextPage, FPageCount);
end;
Valori restituiti
| Nuova istanza | Una copia indipendente le cui successive chiamate Compose non possono influire sul componente sorgente |
|---|---|
Nil | L'override non ha potuto produrre una copia; la sessione respinge AttachComponent e i tentativi di composizione che dipendono dal clone |
Vedere anche
TPDFlibDynamicComponent, TPDFlibDynamicComponentSession, Compose, CloneCurrentComponent, AttachComponent